./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memcleanup.prp --file ../sv-benchmarks/c/list-properties/list_search-1.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/list-properties/list_search-1.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 ef935aaf7590747bfbe771bbb249e6b84337edbf0e97024d9de82d0d23d44f30 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:37:15,692 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:37:15,694 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:37:15,723 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:37:15,723 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:37:15,726 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:37:15,728 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:37:15,733 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:37:15,735 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:37:15,740 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:37:15,741 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:37:15,742 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:37:15,742 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:37:15,744 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:37:15,746 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:37:15,749 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:37:15,750 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:37:15,751 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:37:15,753 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:37:15,756 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:37:15,758 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:37:15,759 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:37:15,761 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:37:15,762 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:37:15,766 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:37:15,766 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:37:15,766 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:37:15,768 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:37:15,768 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:37:15,769 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:37:15,769 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:37:15,770 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:37:15,772 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:37:15,772 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:37:15,773 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:37:15,774 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:37:15,774 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:37:15,774 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:37:15,775 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:37:15,775 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:37:15,776 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:37:15,777 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:37:15,815 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:37:15,815 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:37:15,816 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:37:15,816 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:37:15,817 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:37:15,817 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:37:15,818 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:37:15,818 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:37:15,818 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:37:15,818 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:37:15,819 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:37:15,819 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:37:15,819 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:37:15,820 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:37:15,821 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:37:15,821 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:37:15,821 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:37:15,821 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:37:15,821 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:37:15,822 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:37:15,822 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:37:15,822 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:37:15,823 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:37:15,823 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:37:15,824 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 -> ef935aaf7590747bfbe771bbb249e6b84337edbf0e97024d9de82d0d23d44f30 [2022-02-20 23:37:16,045 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:37:16,066 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:37:16,069 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:37:16,070 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:37:16,071 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:37:16,072 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-properties/list_search-1.i [2022-02-20 23:37:16,133 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36d362b50/bb3f35cdc4994b2da7a0afe11eb3b12a/FLAG7bb2fca3d [2022-02-20 23:37:16,574 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:37:16,575 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-properties/list_search-1.i [2022-02-20 23:37:16,597 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36d362b50/bb3f35cdc4994b2da7a0afe11eb3b12a/FLAG7bb2fca3d [2022-02-20 23:37:16,935 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36d362b50/bb3f35cdc4994b2da7a0afe11eb3b12a [2022-02-20 23:37:16,937 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:37:16,938 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:37:16,943 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:37:16,943 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:37:16,946 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:37:16,946 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:37:16" (1/1) ... [2022-02-20 23:37:16,947 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@183be0fb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:16, skipping insertion in model container [2022-02-20 23:37:16,948 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:37:16" (1/1) ... [2022-02-20 23:37:16,956 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:37:16,987 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:37:17,128 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/list-properties/list_search-1.i[813,826] [2022-02-20 23:37:17,244 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:37:17,256 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:37:17,257 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@5d62f607 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:17, skipping insertion in model container [2022-02-20 23:37:17,258 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:37:17,258 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:37:17,261 INFO L158 Benchmark]: Toolchain (without parser) took 321.46ms. Allocated memory was 86.0MB in the beginning and 109.1MB in the end (delta: 23.1MB). Free memory was 51.6MB in the beginning and 81.1MB in the end (delta: -29.5MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2022-02-20 23:37:17,261 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 86.0MB. Free memory was 40.9MB in the beginning and 40.9MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:37:17,262 INFO L158 Benchmark]: CACSL2BoogieTranslator took 315.17ms. Allocated memory was 86.0MB in the beginning and 109.1MB in the end (delta: 23.1MB). Free memory was 51.4MB in the beginning and 81.4MB in the end (delta: -30.0MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2022-02-20 23:37:17,263 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.20ms. Allocated memory is still 86.0MB. Free memory was 40.9MB in the beginning and 40.9MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 315.17ms. Allocated memory was 86.0MB in the beginning and 109.1MB in the end (delta: 23.1MB). Free memory was 51.4MB in the beginning and 81.4MB in the end (delta: -30.0MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 542]: 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/list-properties/list_search-1.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 ef935aaf7590747bfbe771bbb249e6b84337edbf0e97024d9de82d0d23d44f30 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:37:18,928 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:37:18,931 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:37:18,973 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:37:18,973 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:37:18,976 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:37:18,978 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:37:18,982 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:37:18,984 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:37:18,988 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:37:18,989 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:37:18,993 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:37:18,993 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:37:18,995 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:37:18,996 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:37:18,999 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:37:19,000 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:37:19,000 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:37:19,002 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:37:19,007 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:37:19,009 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:37:19,009 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:37:19,010 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:37:19,012 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:37:19,018 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:37:19,018 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:37:19,018 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:37:19,019 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:37:19,020 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:37:19,021 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:37:19,021 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:37:19,021 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:37:19,023 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:37:19,023 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:37:19,024 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:37:19,025 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:37:19,025 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:37:19,025 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:37:19,026 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:37:19,027 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:37:19,027 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:37:19,028 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:37:19,049 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:37:19,051 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:37:19,052 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:37:19,052 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:37:19,053 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:37:19,053 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:37:19,054 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:37:19,054 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:37:19,054 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:37:19,055 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:37:19,055 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:37:19,055 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:37:19,056 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:37:19,057 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:37:19,057 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:37:19,057 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:37:19,057 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:37:19,057 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:37:19,058 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:37:19,058 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:37:19,058 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:37:19,058 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:37:19,058 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:37:19,058 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:37:19,059 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:37:19,059 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:37:19,059 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:37:19,059 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 -> ef935aaf7590747bfbe771bbb249e6b84337edbf0e97024d9de82d0d23d44f30 [2022-02-20 23:37:19,384 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:37:19,402 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:37:19,404 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:37:19,405 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:37:19,406 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:37:19,407 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-properties/list_search-1.i [2022-02-20 23:37:19,464 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/08507b347/032522d3915c4fa4b1c80f2f861390ff/FLAG708fcc536 [2022-02-20 23:37:19,996 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:37:19,999 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-properties/list_search-1.i [2022-02-20 23:37:20,008 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/08507b347/032522d3915c4fa4b1c80f2f861390ff/FLAG708fcc536 [2022-02-20 23:37:20,478 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/08507b347/032522d3915c4fa4b1c80f2f861390ff [2022-02-20 23:37:20,483 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:37:20,484 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:37:20,485 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:37:20,485 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:37:20,490 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:37:20,491 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:20,492 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4d53d3dd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20, skipping insertion in model container [2022-02-20 23:37:20,492 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:20,501 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:37:20,525 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:37:20,640 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/list-properties/list_search-1.i[813,826] [2022-02-20 23:37:20,799 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:37:20,815 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:37:20,831 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:37:20,835 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/list-properties/list_search-1.i[813,826] [2022-02-20 23:37:20,889 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:37:20,906 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:37:20,914 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/list-properties/list_search-1.i[813,826] [2022-02-20 23:37:20,948 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:37:20,987 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:37:20,988 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20 WrapperNode [2022-02-20 23:37:20,988 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:37:20,989 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:37:20,989 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:37:20,990 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:37:20,995 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:37:20" (1/1) ... [2022-02-20 23:37:21,025 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:37:20" (1/1) ... [2022-02-20 23:37:21,055 INFO L137 Inliner]: procedures = 128, calls = 22, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 66 [2022-02-20 23:37:21,056 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:37:21,057 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:37:21,057 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:37:21,057 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:37:21,064 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,065 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,078 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,081 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,089 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,101 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,107 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,110 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:37:21,110 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:37:21,111 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:37:21,111 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:37:21,111 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (1/1) ... [2022-02-20 23:37:21,117 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:37:21,127 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:37:21,145 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:37:21,159 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:37:21,180 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:37:21,180 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:37:21,180 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:37:21,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:37:21,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:37:21,181 INFO L130 BoogieDeclarations]: Found specification of procedure insert_list [2022-02-20 23:37:21,181 INFO L138 BoogieDeclarations]: Found implementation of procedure insert_list [2022-02-20 23:37:21,181 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:37:21,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:37:21,182 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:37:21,182 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:37:21,182 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:37:21,270 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:37:21,271 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:37:21,621 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:37:21,627 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:37:21,628 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:37:21,629 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:37:21 BoogieIcfgContainer [2022-02-20 23:37:21,630 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:37:21,631 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:37:21,631 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:37:21,634 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:37:21,634 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:37:20" (1/3) ... [2022-02-20 23:37:21,634 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@d20027c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:37:21, skipping insertion in model container [2022-02-20 23:37:21,635 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:37:20" (2/3) ... [2022-02-20 23:37:21,635 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@d20027c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:37:21, skipping insertion in model container [2022-02-20 23:37:21,635 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:37:21" (3/3) ... [2022-02-20 23:37:21,636 INFO L111 eAbstractionObserver]: Analyzing ICFG list_search-1.i [2022-02-20 23:37:21,641 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:37:21,641 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 21 error locations. [2022-02-20 23:37:21,676 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:37:21,681 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:37:21,682 INFO L340 AbstractCegarLoop]: Starting to check reachability of 21 error locations. [2022-02-20 23:37:21,698 INFO L276 IsEmpty]: Start isEmpty. Operand has 63 states, 36 states have (on average 1.7777777777777777) internal successors, (64), 57 states have internal predecessors, (64), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:21,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:37:21,704 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:21,704 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:37:21,705 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting insert_listErr0REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:21,709 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:21,709 INFO L85 PathProgramCache]: Analyzing trace with hash 48806309, now seen corresponding path program 1 times [2022-02-20 23:37:21,720 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:21,720 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1863702809] [2022-02-20 23:37:21,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:21,721 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:21,722 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:21,727 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:37:21,764 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:37:21,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:21,840 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:37:21,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:21,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:21,948 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:37:21,964 INFO L290 TraceCheckUtils]: 0: Hoare triple {66#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {66#true} is VALID [2022-02-20 23:37:21,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {66#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {66#true} is VALID [2022-02-20 23:37:21,965 INFO L272 TraceCheckUtils]: 2: Hoare triple {66#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {66#true} is VALID [2022-02-20 23:37:21,967 INFO L290 TraceCheckUtils]: 3: Hoare triple {66#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {80#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:21,968 INFO L290 TraceCheckUtils]: 4: Hoare triple {80#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(1bv1 == #valid[~l.base]); {67#false} is VALID [2022-02-20 23:37:21,968 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:21,968 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:21,969 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:21,970 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1863702809] [2022-02-20 23:37:21,970 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1863702809] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:21,971 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:21,971 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:37:21,972 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [17875799] [2022-02-20 23:37:21,973 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:21,977 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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 5 [2022-02-20 23:37:21,978 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:21,980 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:21,988 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:37:21,988 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:37:21,989 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:22,005 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:37:22,005 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:37:22,008 INFO L87 Difference]: Start difference. First operand has 63 states, 36 states have (on average 1.7777777777777777) internal successors, (64), 57 states have internal predecessors, (64), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:22,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:22,255 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:37:22,255 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:37:22,256 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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 5 [2022-02-20 23:37:22,256 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:22,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:22,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 72 transitions. [2022-02-20 23:37:22,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:22,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 72 transitions. [2022-02-20 23:37:22,267 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 72 transitions. [2022-02-20 23:37:22,386 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:22,412 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:37:22,412 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:37:22,413 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:37:22,416 INFO L933 BasicCegarLoop]: 56 mSDtfsCounter, 12 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:22,417 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 90 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:37:22,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:37:22,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:37:22,461 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:22,462 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:22,463 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:22,466 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:22,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:22,473 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2022-02-20 23:37:22,474 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 63 transitions. [2022-02-20 23:37:22,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:22,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:22,479 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 57 states. [2022-02-20 23:37:22,483 INFO L87 Difference]: Start difference. First operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 57 states. [2022-02-20 23:37:22,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:22,497 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2022-02-20 23:37:22,497 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 63 transitions. [2022-02-20 23:37:22,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:22,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:22,498 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:22,499 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:22,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 35 states have (on average 1.5714285714285714) internal successors, (55), 51 states have internal predecessors, (55), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:22,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 63 transitions. [2022-02-20 23:37:22,504 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 63 transitions. Word has length 5 [2022-02-20 23:37:22,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:22,504 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 63 transitions. [2022-02-20 23:37:22,504 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:22,505 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 63 transitions. [2022-02-20 23:37:22,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:37:22,505 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:22,505 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:37:22,516 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:37:22,714 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:37:22,714 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting insert_listErr1REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:22,715 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:22,715 INFO L85 PathProgramCache]: Analyzing trace with hash 48806310, now seen corresponding path program 1 times [2022-02-20 23:37:22,715 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:22,715 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1166990983] [2022-02-20 23:37:22,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:22,716 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:22,716 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:22,723 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:37:22,726 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:37:22,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:22,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:37:22,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:22,787 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:22,809 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:37:22,819 INFO L290 TraceCheckUtils]: 0: Hoare triple {313#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {313#true} is VALID [2022-02-20 23:37:22,819 INFO L290 TraceCheckUtils]: 1: Hoare triple {313#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {313#true} is VALID [2022-02-20 23:37:22,820 INFO L272 TraceCheckUtils]: 2: Hoare triple {313#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {313#true} is VALID [2022-02-20 23:37:22,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {313#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {327#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:22,821 INFO L290 TraceCheckUtils]: 4: Hoare triple {327#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !((~bvule32(~bvadd32(4bv32, ~l.offset), #length[~l.base]) && ~bvule32(~l.offset, ~bvadd32(4bv32, ~l.offset))) && ~bvule32(0bv32, ~l.offset)); {314#false} is VALID [2022-02-20 23:37:22,822 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:22,822 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:22,822 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:22,822 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1166990983] [2022-02-20 23:37:22,822 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1166990983] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:22,822 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:22,822 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:37:22,822 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [861142107] [2022-02-20 23:37:22,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:22,824 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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 5 [2022-02-20 23:37:22,824 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:22,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:22,830 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:37:22,830 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:37:22,831 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:22,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:37:22,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:37:22,831 INFO L87 Difference]: Start difference. First operand 57 states and 63 transitions. Second operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:23,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:23,045 INFO L93 Difference]: Finished difference Result 53 states and 59 transitions. [2022-02-20 23:37:23,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:37:23,046 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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 5 [2022-02-20 23:37:23,046 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:23,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:23,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 63 transitions. [2022-02-20 23:37:23,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:23,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 63 transitions. [2022-02-20 23:37:23,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 63 transitions. [2022-02-20 23:37:23,131 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:23,133 INFO L225 Difference]: With dead ends: 53 [2022-02-20 23:37:23,133 INFO L226 Difference]: Without dead ends: 53 [2022-02-20 23:37:23,134 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:37:23,135 INFO L933 BasicCegarLoop]: 54 mSDtfsCounter, 8 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:23,135 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 91 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:37:23,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-02-20 23:37:23,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-02-20 23:37:23,139 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:23,139 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:23,140 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:23,140 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:23,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:23,143 INFO L93 Difference]: Finished difference Result 53 states and 59 transitions. [2022-02-20 23:37:23,143 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 59 transitions. [2022-02-20 23:37:23,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:23,144 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:23,145 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 53 states. [2022-02-20 23:37:23,145 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 53 states. [2022-02-20 23:37:23,148 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:23,148 INFO L93 Difference]: Finished difference Result 53 states and 59 transitions. [2022-02-20 23:37:23,148 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 59 transitions. [2022-02-20 23:37:23,149 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:23,149 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:23,149 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:23,149 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:23,149 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.457142857142857) internal successors, (51), 47 states have internal predecessors, (51), 4 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:23,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 59 transitions. [2022-02-20 23:37:23,152 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 59 transitions. Word has length 5 [2022-02-20 23:37:23,152 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:23,152 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 59 transitions. [2022-02-20 23:37:23,153 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 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:37:23,153 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 59 transitions. [2022-02-20 23:37:23,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-02-20 23:37:23,154 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:23,154 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:23,166 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:37:23,363 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:37:23,363 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:23,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:23,363 INFO L85 PathProgramCache]: Analyzing trace with hash -1546335105, now seen corresponding path program 1 times [2022-02-20 23:37:23,365 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:23,365 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1766103958] [2022-02-20 23:37:23,365 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:23,365 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:23,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:23,366 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:37:23,369 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:37:23,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:23,525 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:37:23,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:23,551 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:23,704 INFO L290 TraceCheckUtils]: 0: Hoare triple {542#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {542#true} is VALID [2022-02-20 23:37:23,705 INFO L290 TraceCheckUtils]: 1: Hoare triple {542#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {542#true} is VALID [2022-02-20 23:37:23,705 INFO L272 TraceCheckUtils]: 2: Hoare triple {542#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {542#true} is VALID [2022-02-20 23:37:23,705 INFO L290 TraceCheckUtils]: 3: Hoare triple {542#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,706 INFO L290 TraceCheckUtils]: 4: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,707 INFO L290 TraceCheckUtils]: 5: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,707 INFO L290 TraceCheckUtils]: 6: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,708 INFO L290 TraceCheckUtils]: 7: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,708 INFO L290 TraceCheckUtils]: 8: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} assume true; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,709 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {569#(not (= (_ bv0 32) ~head~0.base))} {542#true} #103#return; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,710 INFO L290 TraceCheckUtils]: 10: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} havoc main_#t~ret7#1; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,710 INFO L272 TraceCheckUtils]: 11: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {582#(= |old(~head~0.base)| ~head~0.base)} is VALID [2022-02-20 23:37:23,711 INFO L290 TraceCheckUtils]: 12: Hoare triple {582#(= |old(~head~0.base)| ~head~0.base)} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {582#(= |old(~head~0.base)| ~head~0.base)} is VALID [2022-02-20 23:37:23,712 INFO L290 TraceCheckUtils]: 13: Hoare triple {582#(= |old(~head~0.base)| ~head~0.base)} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {582#(= |old(~head~0.base)| ~head~0.base)} is VALID [2022-02-20 23:37:23,712 INFO L290 TraceCheckUtils]: 14: Hoare triple {582#(= |old(~head~0.base)| ~head~0.base)} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,713 INFO L290 TraceCheckUtils]: 15: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,713 INFO L290 TraceCheckUtils]: 16: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,714 INFO L290 TraceCheckUtils]: 17: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} assume true; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,714 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {592#(= |old(~head~0.base)| (_ bv0 32))} {569#(not (= (_ bv0 32) ~head~0.base))} #105#return; {543#false} is VALID [2022-02-20 23:37:23,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {543#false} havoc main_#t~ret8#1; {543#false} is VALID [2022-02-20 23:37:23,715 INFO L272 TraceCheckUtils]: 20: Hoare triple {543#false} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {543#false} is VALID [2022-02-20 23:37:23,715 INFO L290 TraceCheckUtils]: 21: Hoare triple {543#false} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {543#false} is VALID [2022-02-20 23:37:23,715 INFO L290 TraceCheckUtils]: 22: Hoare triple {543#false} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {543#false} is VALID [2022-02-20 23:37:23,715 INFO L290 TraceCheckUtils]: 23: Hoare triple {543#false} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {543#false} is VALID [2022-02-20 23:37:23,715 INFO L290 TraceCheckUtils]: 24: Hoare triple {543#false} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {543#false} is VALID [2022-02-20 23:37:23,716 INFO L290 TraceCheckUtils]: 25: Hoare triple {543#false} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {543#false} is VALID [2022-02-20 23:37:23,716 INFO L290 TraceCheckUtils]: 26: Hoare triple {543#false} assume true; {543#false} is VALID [2022-02-20 23:37:23,716 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {543#false} {543#false} #107#return; {543#false} is VALID [2022-02-20 23:37:23,716 INFO L290 TraceCheckUtils]: 28: Hoare triple {543#false} havoc main_#t~ret9#1; {543#false} is VALID [2022-02-20 23:37:23,716 INFO L272 TraceCheckUtils]: 29: Hoare triple {543#false} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {543#false} is VALID [2022-02-20 23:37:23,716 INFO L290 TraceCheckUtils]: 30: Hoare triple {543#false} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {543#false} is VALID [2022-02-20 23:37:23,717 INFO L290 TraceCheckUtils]: 31: Hoare triple {543#false} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {543#false} is VALID [2022-02-20 23:37:23,717 INFO L290 TraceCheckUtils]: 32: Hoare triple {543#false} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {543#false} is VALID [2022-02-20 23:37:23,717 INFO L290 TraceCheckUtils]: 33: Hoare triple {543#false} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {543#false} is VALID [2022-02-20 23:37:23,717 INFO L290 TraceCheckUtils]: 34: Hoare triple {543#false} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {543#false} is VALID [2022-02-20 23:37:23,717 INFO L290 TraceCheckUtils]: 35: Hoare triple {543#false} assume true; {543#false} is VALID [2022-02-20 23:37:23,718 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {543#false} {543#false} #109#return; {543#false} is VALID [2022-02-20 23:37:23,718 INFO L290 TraceCheckUtils]: 37: Hoare triple {543#false} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {543#false} is VALID [2022-02-20 23:37:23,718 INFO L290 TraceCheckUtils]: 38: Hoare triple {543#false} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {543#false} is VALID [2022-02-20 23:37:23,718 INFO L290 TraceCheckUtils]: 39: Hoare triple {543#false} assume search_list_#t~short4#1; {543#false} is VALID [2022-02-20 23:37:23,718 INFO L290 TraceCheckUtils]: 40: Hoare triple {543#false} assume !(1bv1 == #valid[search_list_~l#1.base]); {543#false} is VALID [2022-02-20 23:37:23,719 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 29 proven. 6 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-02-20 23:37:23,719 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:23,960 INFO L290 TraceCheckUtils]: 40: Hoare triple {543#false} assume !(1bv1 == #valid[search_list_~l#1.base]); {543#false} is VALID [2022-02-20 23:37:23,961 INFO L290 TraceCheckUtils]: 39: Hoare triple {543#false} assume search_list_#t~short4#1; {543#false} is VALID [2022-02-20 23:37:23,961 INFO L290 TraceCheckUtils]: 38: Hoare triple {543#false} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {543#false} is VALID [2022-02-20 23:37:23,961 INFO L290 TraceCheckUtils]: 37: Hoare triple {543#false} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {543#false} is VALID [2022-02-20 23:37:23,961 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {542#true} {543#false} #109#return; {543#false} is VALID [2022-02-20 23:37:23,961 INFO L290 TraceCheckUtils]: 35: Hoare triple {542#true} assume true; {542#true} is VALID [2022-02-20 23:37:23,962 INFO L290 TraceCheckUtils]: 34: Hoare triple {542#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {542#true} is VALID [2022-02-20 23:37:23,962 INFO L290 TraceCheckUtils]: 33: Hoare triple {542#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {542#true} is VALID [2022-02-20 23:37:23,962 INFO L290 TraceCheckUtils]: 32: Hoare triple {542#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {542#true} is VALID [2022-02-20 23:37:23,962 INFO L290 TraceCheckUtils]: 31: Hoare triple {542#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {542#true} is VALID [2022-02-20 23:37:23,962 INFO L290 TraceCheckUtils]: 30: Hoare triple {542#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {542#true} is VALID [2022-02-20 23:37:23,962 INFO L272 TraceCheckUtils]: 29: Hoare triple {543#false} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {542#true} is VALID [2022-02-20 23:37:23,963 INFO L290 TraceCheckUtils]: 28: Hoare triple {543#false} havoc main_#t~ret9#1; {543#false} is VALID [2022-02-20 23:37:23,963 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {542#true} {543#false} #107#return; {543#false} is VALID [2022-02-20 23:37:23,963 INFO L290 TraceCheckUtils]: 26: Hoare triple {542#true} assume true; {542#true} is VALID [2022-02-20 23:37:23,963 INFO L290 TraceCheckUtils]: 25: Hoare triple {542#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {542#true} is VALID [2022-02-20 23:37:23,963 INFO L290 TraceCheckUtils]: 24: Hoare triple {542#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {542#true} is VALID [2022-02-20 23:37:23,963 INFO L290 TraceCheckUtils]: 23: Hoare triple {542#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {542#true} is VALID [2022-02-20 23:37:23,964 INFO L290 TraceCheckUtils]: 22: Hoare triple {542#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {542#true} is VALID [2022-02-20 23:37:23,964 INFO L290 TraceCheckUtils]: 21: Hoare triple {542#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {542#true} is VALID [2022-02-20 23:37:23,964 INFO L272 TraceCheckUtils]: 20: Hoare triple {543#false} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {542#true} is VALID [2022-02-20 23:37:23,964 INFO L290 TraceCheckUtils]: 19: Hoare triple {543#false} havoc main_#t~ret8#1; {543#false} is VALID [2022-02-20 23:37:23,966 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {592#(= |old(~head~0.base)| (_ bv0 32))} {569#(not (= (_ bv0 32) ~head~0.base))} #105#return; {543#false} is VALID [2022-02-20 23:37:23,969 INFO L290 TraceCheckUtils]: 17: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} assume true; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,969 INFO L290 TraceCheckUtils]: 16: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,970 INFO L290 TraceCheckUtils]: 15: Hoare triple {592#(= |old(~head~0.base)| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,970 INFO L290 TraceCheckUtils]: 14: Hoare triple {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {592#(= |old(~head~0.base)| (_ bv0 32))} is VALID [2022-02-20 23:37:23,972 INFO L290 TraceCheckUtils]: 13: Hoare triple {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:23,972 INFO L290 TraceCheckUtils]: 12: Hoare triple {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:23,973 INFO L272 TraceCheckUtils]: 11: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {752#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:23,975 INFO L290 TraceCheckUtils]: 10: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} havoc main_#t~ret7#1; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,976 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {569#(not (= (_ bv0 32) ~head~0.base))} {542#true} #103#return; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {569#(not (= (_ bv0 32) ~head~0.base))} assume true; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {569#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:23,980 INFO L290 TraceCheckUtils]: 6: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,981 INFO L290 TraceCheckUtils]: 5: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,982 INFO L290 TraceCheckUtils]: 4: Hoare triple {556#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,982 INFO L290 TraceCheckUtils]: 3: Hoare triple {542#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {556#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:23,982 INFO L272 TraceCheckUtils]: 2: Hoare triple {542#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {542#true} is VALID [2022-02-20 23:37:23,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {542#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {542#true} is VALID [2022-02-20 23:37:23,983 INFO L290 TraceCheckUtils]: 0: Hoare triple {542#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {542#true} is VALID [2022-02-20 23:37:23,983 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 1 proven. 32 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-02-20 23:37:23,983 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:23,984 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1766103958] [2022-02-20 23:37:23,984 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1766103958] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:37:23,984 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:23,984 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-02-20 23:37:23,984 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [452067767] [2022-02-20 23:37:23,984 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:23,985 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-02-20 23:37:23,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:23,986 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:24,053 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:24,054 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:37:24,054 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:24,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:37:24,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:24,055 INFO L87 Difference]: Start difference. First operand 53 states and 59 transitions. Second operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:24,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:24,697 INFO L93 Difference]: Finished difference Result 72 states and 79 transitions. [2022-02-20 23:37:24,697 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:37:24,698 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-02-20 23:37:24,698 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:24,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:24,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2022-02-20 23:37:24,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:24,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2022-02-20 23:37:24,712 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2022-02-20 23:37:24,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:24,825 INFO L225 Difference]: With dead ends: 72 [2022-02-20 23:37:24,825 INFO L226 Difference]: Without dead ends: 72 [2022-02-20 23:37:24,825 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=52, Invalid=104, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:37:24,826 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 57 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 94 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 94 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:24,827 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 169 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:37:24,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-02-20 23:37:24,837 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 60. [2022-02-20 23:37:24,838 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:24,838 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:24,839 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:24,839 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:24,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:24,844 INFO L93 Difference]: Finished difference Result 72 states and 79 transitions. [2022-02-20 23:37:24,844 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 79 transitions. [2022-02-20 23:37:24,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:24,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:24,846 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 72 states. [2022-02-20 23:37:24,846 INFO L87 Difference]: Start difference. First operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 72 states. [2022-02-20 23:37:24,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:24,849 INFO L93 Difference]: Finished difference Result 72 states and 79 transitions. [2022-02-20 23:37:24,849 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 79 transitions. [2022-02-20 23:37:24,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:24,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:24,851 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:24,851 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:24,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 41 states have (on average 1.3902439024390243) internal successors, (57), 53 states have internal predecessors, (57), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:24,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 66 transitions. [2022-02-20 23:37:24,854 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 66 transitions. Word has length 41 [2022-02-20 23:37:24,854 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:24,854 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 66 transitions. [2022-02-20 23:37:24,855 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 5.142857142857143) internal successors, (36), 7 states have internal predecessors, (36), 3 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:24,855 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 66 transitions. [2022-02-20 23:37:24,856 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-02-20 23:37:24,856 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:24,856 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:24,873 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:37:25,067 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:37:25,068 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:25,068 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:25,068 INFO L85 PathProgramCache]: Analyzing trace with hash -1413963380, now seen corresponding path program 1 times [2022-02-20 23:37:25,069 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:25,069 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [986031925] [2022-02-20 23:37:25,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:25,069 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:25,070 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:25,071 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:37:25,072 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:37:25,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:25,254 INFO L263 TraceCheckSpWp]: Trace formula consists of 363 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:37:25,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:25,275 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:25,373 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:37:25,446 INFO L290 TraceCheckUtils]: 0: Hoare triple {1081#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {1081#true} is VALID [2022-02-20 23:37:25,446 INFO L290 TraceCheckUtils]: 1: Hoare triple {1081#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {1081#true} is VALID [2022-02-20 23:37:25,446 INFO L272 TraceCheckUtils]: 2: Hoare triple {1081#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {1081#true} is VALID [2022-02-20 23:37:25,446 INFO L290 TraceCheckUtils]: 3: Hoare triple {1081#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1081#true} is VALID [2022-02-20 23:37:25,446 INFO L290 TraceCheckUtils]: 4: Hoare triple {1081#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1081#true} is VALID [2022-02-20 23:37:25,447 INFO L290 TraceCheckUtils]: 5: Hoare triple {1081#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {1081#true} is VALID [2022-02-20 23:37:25,447 INFO L290 TraceCheckUtils]: 6: Hoare triple {1081#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {1081#true} is VALID [2022-02-20 23:37:25,447 INFO L290 TraceCheckUtils]: 7: Hoare triple {1081#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1081#true} is VALID [2022-02-20 23:37:25,447 INFO L290 TraceCheckUtils]: 8: Hoare triple {1081#true} assume true; {1081#true} is VALID [2022-02-20 23:37:25,447 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1081#true} {1081#true} #103#return; {1081#true} is VALID [2022-02-20 23:37:25,448 INFO L290 TraceCheckUtils]: 10: Hoare triple {1081#true} havoc main_#t~ret7#1; {1081#true} is VALID [2022-02-20 23:37:25,448 INFO L272 TraceCheckUtils]: 11: Hoare triple {1081#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {1081#true} is VALID [2022-02-20 23:37:25,448 INFO L290 TraceCheckUtils]: 12: Hoare triple {1081#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1081#true} is VALID [2022-02-20 23:37:25,448 INFO L290 TraceCheckUtils]: 13: Hoare triple {1081#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1081#true} is VALID [2022-02-20 23:37:25,448 INFO L290 TraceCheckUtils]: 14: Hoare triple {1081#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1081#true} is VALID [2022-02-20 23:37:25,449 INFO L290 TraceCheckUtils]: 15: Hoare triple {1081#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1081#true} is VALID [2022-02-20 23:37:25,449 INFO L290 TraceCheckUtils]: 16: Hoare triple {1081#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1081#true} is VALID [2022-02-20 23:37:25,449 INFO L290 TraceCheckUtils]: 17: Hoare triple {1081#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1081#true} is VALID [2022-02-20 23:37:25,449 INFO L290 TraceCheckUtils]: 18: Hoare triple {1081#true} assume true; {1081#true} is VALID [2022-02-20 23:37:25,449 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1081#true} {1081#true} #105#return; {1081#true} is VALID [2022-02-20 23:37:25,450 INFO L290 TraceCheckUtils]: 20: Hoare triple {1081#true} havoc main_#t~ret8#1; {1081#true} is VALID [2022-02-20 23:37:25,450 INFO L272 TraceCheckUtils]: 21: Hoare triple {1081#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {1081#true} is VALID [2022-02-20 23:37:25,450 INFO L290 TraceCheckUtils]: 22: Hoare triple {1081#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1081#true} is VALID [2022-02-20 23:37:25,450 INFO L290 TraceCheckUtils]: 23: Hoare triple {1081#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1081#true} is VALID [2022-02-20 23:37:25,450 INFO L290 TraceCheckUtils]: 24: Hoare triple {1081#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L290 TraceCheckUtils]: 25: Hoare triple {1081#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L290 TraceCheckUtils]: 26: Hoare triple {1081#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L290 TraceCheckUtils]: 27: Hoare triple {1081#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L290 TraceCheckUtils]: 28: Hoare triple {1081#true} assume true; {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1081#true} {1081#true} #107#return; {1081#true} is VALID [2022-02-20 23:37:25,451 INFO L290 TraceCheckUtils]: 30: Hoare triple {1081#true} havoc main_#t~ret9#1; {1081#true} is VALID [2022-02-20 23:37:25,452 INFO L272 TraceCheckUtils]: 31: Hoare triple {1081#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {1081#true} is VALID [2022-02-20 23:37:25,453 INFO L290 TraceCheckUtils]: 32: Hoare triple {1081#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,454 INFO L290 TraceCheckUtils]: 33: Hoare triple {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,454 INFO L290 TraceCheckUtils]: 34: Hoare triple {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,454 INFO L290 TraceCheckUtils]: 35: Hoare triple {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,455 INFO L290 TraceCheckUtils]: 36: Hoare triple {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,455 INFO L290 TraceCheckUtils]: 37: Hoare triple {1182#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,456 INFO L290 TraceCheckUtils]: 38: Hoare triple {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,457 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} {1081#true} #109#return; {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:25,457 INFO L290 TraceCheckUtils]: 40: Hoare triple {1198#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:25,458 INFO L290 TraceCheckUtils]: 41: Hoare triple {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:25,458 INFO L290 TraceCheckUtils]: 42: Hoare triple {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} assume search_list_#t~short4#1; {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:25,458 INFO L290 TraceCheckUtils]: 43: Hoare triple {1208#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[search_list_~l#1.base]); {1082#false} is VALID [2022-02-20 23:37:25,459 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:25,459 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:25,459 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:25,459 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [986031925] [2022-02-20 23:37:25,459 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [986031925] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:25,460 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:25,460 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:37:25,460 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1711668917] [2022-02-20 23:37:25,460 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:25,461 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 44 [2022-02-20 23:37:25,461 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:25,461 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:25,504 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:25,505 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:37:25,505 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:25,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:37:25,505 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:37:25,506 INFO L87 Difference]: Start difference. First operand 60 states and 66 transitions. Second operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:26,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:26,016 INFO L93 Difference]: Finished difference Result 90 states and 98 transitions. [2022-02-20 23:37:26,017 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:37:26,017 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 44 [2022-02-20 23:37:26,017 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:26,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:26,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 101 transitions. [2022-02-20 23:37:26,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:26,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 101 transitions. [2022-02-20 23:37:26,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 101 transitions. [2022-02-20 23:37:26,141 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:26,143 INFO L225 Difference]: With dead ends: 90 [2022-02-20 23:37:26,143 INFO L226 Difference]: Without dead ends: 90 [2022-02-20 23:37:26,143 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:26,144 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 99 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 99 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 121 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:26,144 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [99 Valid, 80 Invalid, 121 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:37:26,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-02-20 23:37:26,148 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 65. [2022-02-20 23:37:26,149 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:26,149 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:26,149 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:26,149 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:26,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:26,164 INFO L93 Difference]: Finished difference Result 90 states and 98 transitions. [2022-02-20 23:37:26,164 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 98 transitions. [2022-02-20 23:37:26,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:26,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:26,165 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 90 states. [2022-02-20 23:37:26,165 INFO L87 Difference]: Start difference. First operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 90 states. [2022-02-20 23:37:26,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:26,169 INFO L93 Difference]: Finished difference Result 90 states and 98 transitions. [2022-02-20 23:37:26,169 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 98 transitions. [2022-02-20 23:37:26,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:26,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:26,170 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:26,170 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:26,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 47 states have (on average 1.425531914893617) internal successors, (67), 58 states have internal predecessors, (67), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:26,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 76 transitions. [2022-02-20 23:37:26,173 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 76 transitions. Word has length 44 [2022-02-20 23:37:26,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:26,173 INFO L470 AbstractCegarLoop]: Abstraction has 65 states and 76 transitions. [2022-02-20 23:37:26,173 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:26,173 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-02-20 23:37:26,174 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-02-20 23:37:26,174 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:26,174 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:26,194 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:37:26,390 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:37:26,391 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:26,391 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:26,391 INFO L85 PathProgramCache]: Analyzing trace with hash -1413963379, now seen corresponding path program 1 times [2022-02-20 23:37:26,392 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:26,392 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [180152347] [2022-02-20 23:37:26,392 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:26,392 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:26,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:26,393 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:37:26,395 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:37:26,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:26,579 INFO L263 TraceCheckSpWp]: Trace formula consists of 363 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:37:26,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:26,605 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:26,692 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:37:26,802 INFO L290 TraceCheckUtils]: 0: Hoare triple {1556#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {1556#true} is VALID [2022-02-20 23:37:26,802 INFO L290 TraceCheckUtils]: 1: Hoare triple {1556#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {1556#true} is VALID [2022-02-20 23:37:26,802 INFO L272 TraceCheckUtils]: 2: Hoare triple {1556#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 3: Hoare triple {1556#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 4: Hoare triple {1556#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {1556#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 6: Hoare triple {1556#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 7: Hoare triple {1556#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1556#true} is VALID [2022-02-20 23:37:26,803 INFO L290 TraceCheckUtils]: 8: Hoare triple {1556#true} assume true; {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1556#true} {1556#true} #103#return; {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L290 TraceCheckUtils]: 10: Hoare triple {1556#true} havoc main_#t~ret7#1; {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L272 TraceCheckUtils]: 11: Hoare triple {1556#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L290 TraceCheckUtils]: 12: Hoare triple {1556#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {1556#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1556#true} is VALID [2022-02-20 23:37:26,804 INFO L290 TraceCheckUtils]: 14: Hoare triple {1556#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L290 TraceCheckUtils]: 15: Hoare triple {1556#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L290 TraceCheckUtils]: 16: Hoare triple {1556#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L290 TraceCheckUtils]: 17: Hoare triple {1556#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L290 TraceCheckUtils]: 18: Hoare triple {1556#true} assume true; {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1556#true} {1556#true} #105#return; {1556#true} is VALID [2022-02-20 23:37:26,805 INFO L290 TraceCheckUtils]: 20: Hoare triple {1556#true} havoc main_#t~ret8#1; {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L272 TraceCheckUtils]: 21: Hoare triple {1556#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L290 TraceCheckUtils]: 22: Hoare triple {1556#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L290 TraceCheckUtils]: 23: Hoare triple {1556#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L290 TraceCheckUtils]: 24: Hoare triple {1556#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L290 TraceCheckUtils]: 25: Hoare triple {1556#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1556#true} is VALID [2022-02-20 23:37:26,806 INFO L290 TraceCheckUtils]: 26: Hoare triple {1556#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1556#true} is VALID [2022-02-20 23:37:26,815 INFO L290 TraceCheckUtils]: 27: Hoare triple {1556#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1556#true} is VALID [2022-02-20 23:37:26,815 INFO L290 TraceCheckUtils]: 28: Hoare triple {1556#true} assume true; {1556#true} is VALID [2022-02-20 23:37:26,815 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1556#true} {1556#true} #107#return; {1556#true} is VALID [2022-02-20 23:37:26,815 INFO L290 TraceCheckUtils]: 30: Hoare triple {1556#true} havoc main_#t~ret9#1; {1556#true} is VALID [2022-02-20 23:37:26,815 INFO L272 TraceCheckUtils]: 31: Hoare triple {1556#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {1556#true} is VALID [2022-02-20 23:37:26,817 INFO L290 TraceCheckUtils]: 32: Hoare triple {1556#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:26,818 INFO L290 TraceCheckUtils]: 33: Hoare triple {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:26,818 INFO L290 TraceCheckUtils]: 34: Hoare triple {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:26,819 INFO L290 TraceCheckUtils]: 35: Hoare triple {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:26,820 INFO L290 TraceCheckUtils]: 36: Hoare triple {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:26,821 INFO L290 TraceCheckUtils]: 37: Hoare triple {1657#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:26,822 INFO L290 TraceCheckUtils]: 38: Hoare triple {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:26,823 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {1556#true} #109#return; {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:26,824 INFO L290 TraceCheckUtils]: 40: Hoare triple {1673#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:26,824 INFO L290 TraceCheckUtils]: 41: Hoare triple {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:26,825 INFO L290 TraceCheckUtils]: 42: Hoare triple {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:26,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {1683#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, search_list_~l#1.offset), #length[search_list_~l#1.base]) && ~bvule32(search_list_~l#1.offset, ~bvadd32(4bv32, search_list_~l#1.offset))) && ~bvule32(0bv32, search_list_~l#1.offset)); {1557#false} is VALID [2022-02-20 23:37:26,826 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:26,826 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:26,826 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:26,826 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [180152347] [2022-02-20 23:37:26,826 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [180152347] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:26,826 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:26,826 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:37:26,827 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1358685769] [2022-02-20 23:37:26,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:26,827 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 44 [2022-02-20 23:37:26,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:26,828 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:26,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:26,870 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:37:26,870 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:26,870 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:37:26,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:37:26,871 INFO L87 Difference]: Start difference. First operand 65 states and 76 transitions. Second operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:27,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:27,467 INFO L93 Difference]: Finished difference Result 106 states and 116 transitions. [2022-02-20 23:37:27,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:37:27,468 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 44 [2022-02-20 23:37:27,468 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:27,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:27,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 115 transitions. [2022-02-20 23:37:27,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:27,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 115 transitions. [2022-02-20 23:37:27,472 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 115 transitions. [2022-02-20 23:37:27,609 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:27,611 INFO L225 Difference]: With dead ends: 106 [2022-02-20 23:37:27,611 INFO L226 Difference]: Without dead ends: 106 [2022-02-20 23:37:27,611 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:27,612 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 103 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 107 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 117 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 107 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:27,612 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 91 Invalid, 117 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 107 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:37:27,613 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-02-20 23:37:27,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 70. [2022-02-20 23:37:27,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:27,617 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:27,617 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:27,618 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:27,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:27,621 INFO L93 Difference]: Finished difference Result 106 states and 116 transitions. [2022-02-20 23:37:27,621 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 116 transitions. [2022-02-20 23:37:27,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:27,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:27,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 106 states. [2022-02-20 23:37:27,622 INFO L87 Difference]: Start difference. First operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 106 states. [2022-02-20 23:37:27,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:27,625 INFO L93 Difference]: Finished difference Result 106 states and 116 transitions. [2022-02-20 23:37:27,626 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 116 transitions. [2022-02-20 23:37:27,626 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:27,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:27,626 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:27,626 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:27,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 52 states have (on average 1.3653846153846154) internal successors, (71), 63 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:27,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 80 transitions. [2022-02-20 23:37:27,629 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 80 transitions. Word has length 44 [2022-02-20 23:37:27,629 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:27,629 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 80 transitions. [2022-02-20 23:37:27,629 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.25) internal successors, (25), 5 states have internal predecessors, (25), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:27,630 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 80 transitions. [2022-02-20 23:37:27,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-02-20 23:37:27,630 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:27,631 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 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:27,647 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:37:27,842 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:37:27,842 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:27,843 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:27,843 INFO L85 PathProgramCache]: Analyzing trace with hash 1662023696, now seen corresponding path program 1 times [2022-02-20 23:37:27,843 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:27,843 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [552865857] [2022-02-20 23:37:27,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:27,844 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:27,844 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:27,847 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:37:27,849 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:37:28,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:28,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 368 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:37:28,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:28,056 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:28,203 INFO L290 TraceCheckUtils]: 0: Hoare triple {2084#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {2084#true} is VALID [2022-02-20 23:37:28,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {2084#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {2084#true} is VALID [2022-02-20 23:37:28,203 INFO L272 TraceCheckUtils]: 2: Hoare triple {2084#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {2084#true} is VALID [2022-02-20 23:37:28,203 INFO L290 TraceCheckUtils]: 3: Hoare triple {2084#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 4: Hoare triple {2084#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 5: Hoare triple {2084#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 6: Hoare triple {2084#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 7: Hoare triple {2084#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 8: Hoare triple {2084#true} assume true; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2084#true} {2084#true} #103#return; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 10: Hoare triple {2084#true} havoc main_#t~ret7#1; {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L272 TraceCheckUtils]: 11: Hoare triple {2084#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {2084#true} is VALID [2022-02-20 23:37:28,204 INFO L290 TraceCheckUtils]: 12: Hoare triple {2084#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 13: Hoare triple {2084#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 14: Hoare triple {2084#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 15: Hoare triple {2084#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {2084#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {2084#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 18: Hoare triple {2084#true} assume true; {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2084#true} {2084#true} #105#return; {2084#true} is VALID [2022-02-20 23:37:28,205 INFO L290 TraceCheckUtils]: 20: Hoare triple {2084#true} havoc main_#t~ret8#1; {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L272 TraceCheckUtils]: 21: Hoare triple {2084#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 22: Hoare triple {2084#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 23: Hoare triple {2084#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 24: Hoare triple {2084#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 25: Hoare triple {2084#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 26: Hoare triple {2084#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 27: Hoare triple {2084#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 28: Hoare triple {2084#true} assume true; {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2084#true} {2084#true} #107#return; {2084#true} is VALID [2022-02-20 23:37:28,206 INFO L290 TraceCheckUtils]: 30: Hoare triple {2084#true} havoc main_#t~ret9#1; {2084#true} is VALID [2022-02-20 23:37:28,207 INFO L272 TraceCheckUtils]: 31: Hoare triple {2084#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {2084#true} is VALID [2022-02-20 23:37:28,210 INFO L290 TraceCheckUtils]: 32: Hoare triple {2084#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2185#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:28,211 INFO L290 TraceCheckUtils]: 33: Hoare triple {2185#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2185#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:28,211 INFO L290 TraceCheckUtils]: 34: Hoare triple {2185#(not (= insert_list_~l.base (_ bv0 32)))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2185#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:28,212 INFO L290 TraceCheckUtils]: 35: Hoare triple {2185#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2185#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:28,212 INFO L290 TraceCheckUtils]: 36: Hoare triple {2185#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2185#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:28,213 INFO L290 TraceCheckUtils]: 37: Hoare triple {2185#(not (= insert_list_~l.base (_ bv0 32)))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2201#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:28,213 INFO L290 TraceCheckUtils]: 38: Hoare triple {2201#(not (= (_ bv0 32) ~head~0.base))} assume true; {2201#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:28,214 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {2201#(not (= (_ bv0 32) ~head~0.base))} {2084#true} #109#return; {2201#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:28,214 INFO L290 TraceCheckUtils]: 40: Hoare triple {2201#(not (= (_ bv0 32) ~head~0.base))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {2211#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:37:28,216 INFO L290 TraceCheckUtils]: 41: Hoare triple {2211#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {2215#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:28,216 INFO L290 TraceCheckUtils]: 42: Hoare triple {2215#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1; {2085#false} is VALID [2022-02-20 23:37:28,217 INFO L290 TraceCheckUtils]: 43: Hoare triple {2085#false} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {2085#false} is VALID [2022-02-20 23:37:28,217 INFO L290 TraceCheckUtils]: 44: Hoare triple {2085#false} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {2085#false} is VALID [2022-02-20 23:37:28,217 INFO L290 TraceCheckUtils]: 45: Hoare triple {2085#false} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {2085#false} is VALID [2022-02-20 23:37:28,217 INFO L290 TraceCheckUtils]: 46: Hoare triple {2085#false} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {2085#false} is VALID [2022-02-20 23:37:28,217 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:28,217 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:28,217 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:28,218 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [552865857] [2022-02-20 23:37:28,218 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [552865857] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:28,218 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:28,218 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:37:28,218 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [870250471] [2022-02-20 23:37:28,218 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:28,219 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 47 [2022-02-20 23:37:28,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:28,219 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:28,262 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:28,262 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:37:28,262 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:28,263 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:37:28,263 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:37:28,263 INFO L87 Difference]: Start difference. First operand 70 states and 80 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:28,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:28,800 INFO L93 Difference]: Finished difference Result 106 states and 115 transitions. [2022-02-20 23:37:28,800 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:37:28,800 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 47 [2022-02-20 23:37:28,800 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:28,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:28,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 109 transitions. [2022-02-20 23:37:28,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:28,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 109 transitions. [2022-02-20 23:37:28,804 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 109 transitions. [2022-02-20 23:37:28,919 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:28,921 INFO L225 Difference]: With dead ends: 106 [2022-02-20 23:37:28,922 INFO L226 Difference]: Without dead ends: 106 [2022-02-20 23:37:28,922 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:37:28,922 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 109 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 94 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 109 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 99 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 94 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:28,923 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [109 Valid, 164 Invalid, 99 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:37:28,923 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 106 states. [2022-02-20 23:37:28,926 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 106 to 70. [2022-02-20 23:37:28,926 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:28,927 INFO L82 GeneralOperation]: Start isEquivalent. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:28,927 INFO L74 IsIncluded]: Start isIncluded. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:28,927 INFO L87 Difference]: Start difference. First operand 106 states. Second operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:28,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:28,930 INFO L93 Difference]: Finished difference Result 106 states and 115 transitions. [2022-02-20 23:37:28,930 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 115 transitions. [2022-02-20 23:37:28,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:28,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:28,931 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 106 states. [2022-02-20 23:37:28,931 INFO L87 Difference]: Start difference. First operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 106 states. [2022-02-20 23:37:28,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:28,934 INFO L93 Difference]: Finished difference Result 106 states and 115 transitions. [2022-02-20 23:37:28,934 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 115 transitions. [2022-02-20 23:37:28,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:28,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:28,934 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:28,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:28,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 52 states have (on average 1.3461538461538463) internal successors, (70), 63 states have internal predecessors, (70), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:28,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 79 transitions. [2022-02-20 23:37:28,942 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 79 transitions. Word has length 47 [2022-02-20 23:37:28,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:28,943 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 79 transitions. [2022-02-20 23:37:28,943 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 6 states have internal predecessors, (28), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:28,943 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 79 transitions. [2022-02-20 23:37:28,943 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-20 23:37:28,943 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:28,944 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 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:28,958 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:37:29,155 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:37:29,155 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:29,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:29,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1825916083, now seen corresponding path program 1 times [2022-02-20 23:37:29,156 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:29,157 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [823662085] [2022-02-20 23:37:29,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:29,157 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:29,157 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:29,158 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:37:29,160 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:37:29,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:29,411 INFO L263 TraceCheckSpWp]: Trace formula consists of 374 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:37:29,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:29,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:29,525 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:37:29,718 INFO L290 TraceCheckUtils]: 0: Hoare triple {2626#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {2626#true} is VALID [2022-02-20 23:37:29,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {2626#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {2626#true} is VALID [2022-02-20 23:37:29,719 INFO L272 TraceCheckUtils]: 2: Hoare triple {2626#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {2626#true} is VALID [2022-02-20 23:37:29,719 INFO L290 TraceCheckUtils]: 3: Hoare triple {2626#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2626#true} is VALID [2022-02-20 23:37:29,719 INFO L290 TraceCheckUtils]: 4: Hoare triple {2626#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2626#true} is VALID [2022-02-20 23:37:29,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {2626#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {2626#true} is VALID [2022-02-20 23:37:29,720 INFO L290 TraceCheckUtils]: 6: Hoare triple {2626#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {2626#true} is VALID [2022-02-20 23:37:29,720 INFO L290 TraceCheckUtils]: 7: Hoare triple {2626#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2626#true} is VALID [2022-02-20 23:37:29,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {2626#true} assume true; {2626#true} is VALID [2022-02-20 23:37:29,725 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2626#true} {2626#true} #103#return; {2626#true} is VALID [2022-02-20 23:37:29,726 INFO L290 TraceCheckUtils]: 10: Hoare triple {2626#true} havoc main_#t~ret7#1; {2626#true} is VALID [2022-02-20 23:37:29,729 INFO L272 TraceCheckUtils]: 11: Hoare triple {2626#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {2626#true} is VALID [2022-02-20 23:37:29,730 INFO L290 TraceCheckUtils]: 12: Hoare triple {2626#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2626#true} is VALID [2022-02-20 23:37:29,730 INFO L290 TraceCheckUtils]: 13: Hoare triple {2626#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2626#true} is VALID [2022-02-20 23:37:29,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {2626#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2626#true} is VALID [2022-02-20 23:37:29,732 INFO L290 TraceCheckUtils]: 15: Hoare triple {2626#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2626#true} is VALID [2022-02-20 23:37:29,732 INFO L290 TraceCheckUtils]: 16: Hoare triple {2626#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2626#true} is VALID [2022-02-20 23:37:29,732 INFO L290 TraceCheckUtils]: 17: Hoare triple {2626#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2626#true} is VALID [2022-02-20 23:37:29,733 INFO L290 TraceCheckUtils]: 18: Hoare triple {2626#true} assume true; {2626#true} is VALID [2022-02-20 23:37:29,733 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2626#true} {2626#true} #105#return; {2626#true} is VALID [2022-02-20 23:37:29,734 INFO L290 TraceCheckUtils]: 20: Hoare triple {2626#true} havoc main_#t~ret8#1; {2626#true} is VALID [2022-02-20 23:37:29,734 INFO L272 TraceCheckUtils]: 21: Hoare triple {2626#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {2626#true} is VALID [2022-02-20 23:37:29,734 INFO L290 TraceCheckUtils]: 22: Hoare triple {2626#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2626#true} is VALID [2022-02-20 23:37:29,735 INFO L290 TraceCheckUtils]: 23: Hoare triple {2626#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2626#true} is VALID [2022-02-20 23:37:29,735 INFO L290 TraceCheckUtils]: 24: Hoare triple {2626#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2626#true} is VALID [2022-02-20 23:37:29,735 INFO L290 TraceCheckUtils]: 25: Hoare triple {2626#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2626#true} is VALID [2022-02-20 23:37:29,735 INFO L290 TraceCheckUtils]: 26: Hoare triple {2626#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2626#true} is VALID [2022-02-20 23:37:29,736 INFO L290 TraceCheckUtils]: 27: Hoare triple {2626#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2626#true} is VALID [2022-02-20 23:37:29,736 INFO L290 TraceCheckUtils]: 28: Hoare triple {2626#true} assume true; {2626#true} is VALID [2022-02-20 23:37:29,739 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2626#true} {2626#true} #107#return; {2626#true} is VALID [2022-02-20 23:37:29,739 INFO L290 TraceCheckUtils]: 30: Hoare triple {2626#true} havoc main_#t~ret9#1; {2626#true} is VALID [2022-02-20 23:37:29,739 INFO L272 TraceCheckUtils]: 31: Hoare triple {2626#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {2626#true} is VALID [2022-02-20 23:37:29,740 INFO L290 TraceCheckUtils]: 32: Hoare triple {2626#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:29,741 INFO L290 TraceCheckUtils]: 33: Hoare triple {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:29,742 INFO L290 TraceCheckUtils]: 34: Hoare triple {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:29,742 INFO L290 TraceCheckUtils]: 35: Hoare triple {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:29,743 INFO L290 TraceCheckUtils]: 36: Hoare triple {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:29,744 INFO L290 TraceCheckUtils]: 37: Hoare triple {2727#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:29,744 INFO L290 TraceCheckUtils]: 38: Hoare triple {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:29,746 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {2626#true} #109#return; {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:29,746 INFO L290 TraceCheckUtils]: 40: Hoare triple {2743#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,747 INFO L290 TraceCheckUtils]: 41: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,747 INFO L290 TraceCheckUtils]: 42: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,748 INFO L290 TraceCheckUtils]: 43: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,748 INFO L290 TraceCheckUtils]: 44: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,749 INFO L290 TraceCheckUtils]: 45: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:29,750 INFO L290 TraceCheckUtils]: 46: Hoare triple {2753#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {2772#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_#res#1.offset|))} is VALID [2022-02-20 23:37:29,751 INFO L290 TraceCheckUtils]: 47: Hoare triple {2772#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_#res#1.offset|))} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {2776#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (= |ULTIMATE.start_main_~temp~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:37:29,751 INFO L290 TraceCheckUtils]: 48: Hoare triple {2776#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (= |ULTIMATE.start_main_~temp~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {2627#false} is VALID [2022-02-20 23:37:29,753 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:29,753 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:29,753 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:29,754 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [823662085] [2022-02-20 23:37:29,754 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [823662085] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:29,754 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:29,754 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:37:29,754 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1328733771] [2022-02-20 23:37:29,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:29,756 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-20 23:37:29,757 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:29,757 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:29,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:29,808 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:37:29,808 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:29,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:37:29,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:29,809 INFO L87 Difference]: Start difference. First operand 70 states and 79 transitions. Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:30,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:30,755 INFO L93 Difference]: Finished difference Result 105 states and 114 transitions. [2022-02-20 23:37:30,755 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:37:30,755 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-20 23:37:30,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:30,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:30,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-02-20 23:37:30,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:30,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-02-20 23:37:30,758 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-02-20 23:37:30,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:30,871 INFO L225 Difference]: With dead ends: 105 [2022-02-20 23:37:30,871 INFO L226 Difference]: Without dead ends: 105 [2022-02-20 23:37:30,871 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:37:30,872 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 147 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 187 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 147 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 194 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 187 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:30,872 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [147 Valid, 139 Invalid, 194 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 187 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:37:30,872 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2022-02-20 23:37:30,875 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 73. [2022-02-20 23:37:30,875 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:30,876 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:30,876 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:30,876 INFO L87 Difference]: Start difference. First operand 105 states. Second operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:30,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:30,879 INFO L93 Difference]: Finished difference Result 105 states and 114 transitions. [2022-02-20 23:37:30,879 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 114 transitions. [2022-02-20 23:37:30,879 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:30,879 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:30,879 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 105 states. [2022-02-20 23:37:30,880 INFO L87 Difference]: Start difference. First operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 105 states. [2022-02-20 23:37:30,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:30,882 INFO L93 Difference]: Finished difference Result 105 states and 114 transitions. [2022-02-20 23:37:30,882 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 114 transitions. [2022-02-20 23:37:30,892 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:30,892 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:30,892 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:30,892 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:30,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 55 states have (on average 1.3454545454545455) internal successors, (74), 66 states have internal predecessors, (74), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:30,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 83 transitions. [2022-02-20 23:37:30,894 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 83 transitions. Word has length 49 [2022-02-20 23:37:30,895 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:30,895 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 83 transitions. [2022-02-20 23:37:30,895 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:30,895 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 83 transitions. [2022-02-20 23:37:30,895 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-20 23:37:30,895 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:30,896 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 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:30,908 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:37:31,108 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:37:31,108 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:31,109 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:31,109 INFO L85 PathProgramCache]: Analyzing trace with hash -1825916084, now seen corresponding path program 1 times [2022-02-20 23:37:31,109 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:31,109 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1842988159] [2022-02-20 23:37:31,109 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:31,109 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:31,109 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:31,110 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:37:31,111 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:37:31,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:31,313 INFO L263 TraceCheckSpWp]: Trace formula consists of 374 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:37:31,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:31,330 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:31,396 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:37:31,483 INFO L290 TraceCheckUtils]: 0: Hoare triple {3177#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 1: Hoare triple {3177#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L272 TraceCheckUtils]: 2: Hoare triple {3177#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 3: Hoare triple {3177#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 4: Hoare triple {3177#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 5: Hoare triple {3177#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 6: Hoare triple {3177#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {3177#true} is VALID [2022-02-20 23:37:31,483 INFO L290 TraceCheckUtils]: 7: Hoare triple {3177#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L290 TraceCheckUtils]: 8: Hoare triple {3177#true} assume true; {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3177#true} {3177#true} #103#return; {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L290 TraceCheckUtils]: 10: Hoare triple {3177#true} havoc main_#t~ret7#1; {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L272 TraceCheckUtils]: 11: Hoare triple {3177#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L290 TraceCheckUtils]: 12: Hoare triple {3177#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3177#true} is VALID [2022-02-20 23:37:31,484 INFO L290 TraceCheckUtils]: 13: Hoare triple {3177#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3177#true} is VALID [2022-02-20 23:37:31,486 INFO L290 TraceCheckUtils]: 14: Hoare triple {3177#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3177#true} is VALID [2022-02-20 23:37:31,486 INFO L290 TraceCheckUtils]: 15: Hoare triple {3177#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3177#true} is VALID [2022-02-20 23:37:31,486 INFO L290 TraceCheckUtils]: 16: Hoare triple {3177#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3177#true} is VALID [2022-02-20 23:37:31,486 INFO L290 TraceCheckUtils]: 17: Hoare triple {3177#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 18: Hoare triple {3177#true} assume true; {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3177#true} {3177#true} #105#return; {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {3177#true} havoc main_#t~ret8#1; {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L272 TraceCheckUtils]: 21: Hoare triple {3177#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 22: Hoare triple {3177#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 23: Hoare triple {3177#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 24: Hoare triple {3177#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 25: Hoare triple {3177#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 26: Hoare triple {3177#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3177#true} is VALID [2022-02-20 23:37:31,487 INFO L290 TraceCheckUtils]: 27: Hoare triple {3177#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3177#true} is VALID [2022-02-20 23:37:31,488 INFO L290 TraceCheckUtils]: 28: Hoare triple {3177#true} assume true; {3177#true} is VALID [2022-02-20 23:37:31,488 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3177#true} {3177#true} #107#return; {3177#true} is VALID [2022-02-20 23:37:31,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {3177#true} havoc main_#t~ret9#1; {3177#true} is VALID [2022-02-20 23:37:31,488 INFO L272 TraceCheckUtils]: 31: Hoare triple {3177#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {3177#true} is VALID [2022-02-20 23:37:31,490 INFO L290 TraceCheckUtils]: 32: Hoare triple {3177#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,491 INFO L290 TraceCheckUtils]: 33: Hoare triple {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,491 INFO L290 TraceCheckUtils]: 34: Hoare triple {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,491 INFO L290 TraceCheckUtils]: 35: Hoare triple {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,492 INFO L290 TraceCheckUtils]: 36: Hoare triple {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,492 INFO L290 TraceCheckUtils]: 37: Hoare triple {3278#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,493 INFO L290 TraceCheckUtils]: 38: Hoare triple {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,493 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} {3177#true} #109#return; {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:31,494 INFO L290 TraceCheckUtils]: 40: Hoare triple {3294#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,494 INFO L290 TraceCheckUtils]: 41: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,495 INFO L290 TraceCheckUtils]: 42: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} assume search_list_#t~short4#1; {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,495 INFO L290 TraceCheckUtils]: 43: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,495 INFO L290 TraceCheckUtils]: 44: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,496 INFO L290 TraceCheckUtils]: 45: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,496 INFO L290 TraceCheckUtils]: 46: Hoare triple {3304#(= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1))} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {3323#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_search_list_#res#1.base|))} is VALID [2022-02-20 23:37:31,496 INFO L290 TraceCheckUtils]: 47: Hoare triple {3323#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_search_list_#res#1.base|))} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {3327#(= (select |#valid| |ULTIMATE.start_main_~temp~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:37:31,497 INFO L290 TraceCheckUtils]: 48: Hoare triple {3327#(= (select |#valid| |ULTIMATE.start_main_~temp~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_~temp~0#1.base]); {3178#false} is VALID [2022-02-20 23:37:31,497 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:31,497 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:31,497 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:31,497 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1842988159] [2022-02-20 23:37:31,497 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1842988159] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:31,498 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:31,498 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:37:31,498 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [451255847] [2022-02-20 23:37:31,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:31,498 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-20 23:37:31,499 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:31,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:31,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:31,537 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:37:31,537 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:31,538 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:37:31,538 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:37:31,538 INFO L87 Difference]: Start difference. First operand 73 states and 83 transitions. Second operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:32,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:32,309 INFO L93 Difference]: Finished difference Result 96 states and 104 transitions. [2022-02-20 23:37:32,309 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:37:32,310 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 49 [2022-02-20 23:37:32,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:32,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:32,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-02-20 23:37:32,312 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:32,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-02-20 23:37:32,313 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-02-20 23:37:32,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:32,405 INFO L225 Difference]: With dead ends: 96 [2022-02-20 23:37:32,405 INFO L226 Difference]: Without dead ends: 96 [2022-02-20 23:37:32,406 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:37:32,406 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 125 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 125 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 193 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:32,406 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [125 Valid, 132 Invalid, 193 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 185 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:37:32,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-02-20 23:37:32,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 76. [2022-02-20 23:37:32,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:32,410 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:32,410 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:32,411 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:32,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:32,413 INFO L93 Difference]: Finished difference Result 96 states and 104 transitions. [2022-02-20 23:37:32,413 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 104 transitions. [2022-02-20 23:37:32,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:32,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:32,414 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 96 states. [2022-02-20 23:37:32,414 INFO L87 Difference]: Start difference. First operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Second operand 96 states. [2022-02-20 23:37:32,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:32,425 INFO L93 Difference]: Finished difference Result 96 states and 104 transitions. [2022-02-20 23:37:32,425 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 104 transitions. [2022-02-20 23:37:32,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:32,426 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:32,426 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:32,426 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:32,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 58 states have (on average 1.3275862068965518) internal successors, (77), 69 states have internal predecessors, (77), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-02-20 23:37:32,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 86 transitions. [2022-02-20 23:37:32,429 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 86 transitions. Word has length 49 [2022-02-20 23:37:32,430 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:32,430 INFO L470 AbstractCegarLoop]: Abstraction has 76 states and 86 transitions. [2022-02-20 23:37:32,430 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 5.0) internal successors, (30), 7 states have internal predecessors, (30), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:32,430 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 86 transitions. [2022-02-20 23:37:32,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 23:37:32,431 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:32,431 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 2, 2, 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:32,448 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:37:32,645 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:37:32,645 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:32,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:32,646 INFO L85 PathProgramCache]: Analyzing trace with hash 1986857552, now seen corresponding path program 1 times [2022-02-20 23:37:32,646 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:32,646 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [399272452] [2022-02-20 23:37:32,646 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:32,646 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:32,646 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:32,647 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:37:32,648 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:37:32,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:32,959 INFO L263 TraceCheckSpWp]: Trace formula consists of 380 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 23:37:32,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:32,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:33,027 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:37:33,177 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:33,280 INFO L356 Elim1Store]: treesize reduction 30, result has 31.8 percent of original size [2022-02-20 23:37:33,280 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 18 treesize of output 23 [2022-02-20 23:37:33,443 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 11 [2022-02-20 23:37:33,498 INFO L290 TraceCheckUtils]: 0: Hoare triple {3704#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {3704#true} is VALID [2022-02-20 23:37:33,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {3704#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {3704#true} is VALID [2022-02-20 23:37:33,498 INFO L272 TraceCheckUtils]: 2: Hoare triple {3704#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {3704#true} is VALID [2022-02-20 23:37:33,498 INFO L290 TraceCheckUtils]: 3: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 4: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 5: Hoare triple {3704#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 6: Hoare triple {3704#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {3704#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {3704#true} assume true; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3704#true} {3704#true} #103#return; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 10: Hoare triple {3704#true} havoc main_#t~ret7#1; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L272 TraceCheckUtils]: 11: Hoare triple {3704#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {3704#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 15: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3704#true} is VALID [2022-02-20 23:37:33,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {3704#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3704#true} is VALID [2022-02-20 23:37:33,501 INFO L290 TraceCheckUtils]: 17: Hoare triple {3704#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3704#true} is VALID [2022-02-20 23:37:33,501 INFO L290 TraceCheckUtils]: 18: Hoare triple {3704#true} assume true; {3704#true} is VALID [2022-02-20 23:37:33,502 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3704#true} {3704#true} #105#return; {3704#true} is VALID [2022-02-20 23:37:33,502 INFO L290 TraceCheckUtils]: 20: Hoare triple {3704#true} havoc main_#t~ret8#1; {3704#true} is VALID [2022-02-20 23:37:33,502 INFO L272 TraceCheckUtils]: 21: Hoare triple {3704#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {3704#true} is VALID [2022-02-20 23:37:33,503 INFO L290 TraceCheckUtils]: 22: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,503 INFO L290 TraceCheckUtils]: 23: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,504 INFO L290 TraceCheckUtils]: 24: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,504 INFO L290 TraceCheckUtils]: 25: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,505 INFO L290 TraceCheckUtils]: 26: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,505 INFO L290 TraceCheckUtils]: 27: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,505 INFO L290 TraceCheckUtils]: 28: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,506 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} {3704#true} #107#return; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,507 INFO L290 TraceCheckUtils]: 30: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret9#1; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:33,508 INFO L272 TraceCheckUtils]: 31: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {3804#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} is VALID [2022-02-20 23:37:33,508 INFO L290 TraceCheckUtils]: 32: Hoare triple {3804#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:33,509 INFO L290 TraceCheckUtils]: 33: Hoare triple {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:33,510 INFO L290 TraceCheckUtils]: 34: Hoare triple {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:33,511 INFO L290 TraceCheckUtils]: 35: Hoare triple {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:33,512 INFO L290 TraceCheckUtils]: 36: Hoare triple {3808#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3821#(and (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:33,513 INFO L290 TraceCheckUtils]: 37: Hoare triple {3821#(and (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3825#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:33,513 INFO L290 TraceCheckUtils]: 38: Hoare triple {3825#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {3825#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:33,516 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3825#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} #109#return; {3832#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:37:33,517 INFO L290 TraceCheckUtils]: 40: Hoare triple {3832#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,520 INFO L290 TraceCheckUtils]: 41: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,521 INFO L290 TraceCheckUtils]: 42: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,522 INFO L290 TraceCheckUtils]: 43: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,522 INFO L290 TraceCheckUtils]: 44: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,523 INFO L290 TraceCheckUtils]: 45: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:33,524 INFO L290 TraceCheckUtils]: 46: Hoare triple {3836#(and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (_ bv0 1)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {3855#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:33,524 INFO L290 TraceCheckUtils]: 47: Hoare triple {3855#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:33,525 INFO L290 TraceCheckUtils]: 48: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:33,526 INFO L290 TraceCheckUtils]: 49: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume search_list_#t~short4#1; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:33,526 INFO L290 TraceCheckUtils]: 50: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[search_list_~l#1.base]); {3705#false} is VALID [2022-02-20 23:37:33,527 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 34 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:33,527 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:34,081 INFO L290 TraceCheckUtils]: 50: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[search_list_~l#1.base]); {3705#false} is VALID [2022-02-20 23:37:34,082 INFO L290 TraceCheckUtils]: 49: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume search_list_#t~short4#1; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:34,082 INFO L290 TraceCheckUtils]: 48: Hoare triple {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:34,083 INFO L290 TraceCheckUtils]: 47: Hoare triple {3855#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {3859#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:34,083 INFO L290 TraceCheckUtils]: 46: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {3855#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:34,084 INFO L290 TraceCheckUtils]: 45: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,084 INFO L290 TraceCheckUtils]: 44: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,085 INFO L290 TraceCheckUtils]: 43: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,085 INFO L290 TraceCheckUtils]: 42: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} assume search_list_#t~short4#1; {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,086 INFO L290 TraceCheckUtils]: 41: Hoare triple {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,087 INFO L290 TraceCheckUtils]: 40: Hoare triple {3900#(= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {3881#(= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))))} is VALID [2022-02-20 23:37:34,088 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3907#(or (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1)))} {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} #109#return; {3900#(= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:37:34,088 INFO L290 TraceCheckUtils]: 38: Hoare triple {3907#(or (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1)))} assume true; {3907#(or (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:34,090 INFO L290 TraceCheckUtils]: 37: Hoare triple {3914#(or (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)))))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3907#(or (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:37:34,092 INFO L290 TraceCheckUtils]: 36: Hoare triple {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3914#(or (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)))))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,094 INFO L290 TraceCheckUtils]: 33: Hoare triple {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,095 INFO L290 TraceCheckUtils]: 32: Hoare triple {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,096 INFO L272 TraceCheckUtils]: 31: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {3918#(or (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (not (= (select |old(#valid)| |old(~head~0.base)|) (_ bv1 1))))} is VALID [2022-02-20 23:37:34,096 INFO L290 TraceCheckUtils]: 30: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret9#1; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,097 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} {3704#true} #107#return; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3791#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,099 INFO L290 TraceCheckUtils]: 26: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,099 INFO L290 TraceCheckUtils]: 25: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,099 INFO L290 TraceCheckUtils]: 24: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,100 INFO L290 TraceCheckUtils]: 23: Hoare triple {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,101 INFO L290 TraceCheckUtils]: 22: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3775#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:37:34,101 INFO L272 TraceCheckUtils]: 21: Hoare triple {3704#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {3704#true} is VALID [2022-02-20 23:37:34,101 INFO L290 TraceCheckUtils]: 20: Hoare triple {3704#true} havoc main_#t~ret8#1; {3704#true} is VALID [2022-02-20 23:37:34,101 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3704#true} {3704#true} #105#return; {3704#true} is VALID [2022-02-20 23:37:34,101 INFO L290 TraceCheckUtils]: 18: Hoare triple {3704#true} assume true; {3704#true} is VALID [2022-02-20 23:37:34,101 INFO L290 TraceCheckUtils]: 17: Hoare triple {3704#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3704#true} is VALID [2022-02-20 23:37:34,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {3704#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L290 TraceCheckUtils]: 15: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {3704#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L272 TraceCheckUtils]: 11: Hoare triple {3704#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L290 TraceCheckUtils]: 10: Hoare triple {3704#true} havoc main_#t~ret7#1; {3704#true} is VALID [2022-02-20 23:37:34,102 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {3704#true} {3704#true} #103#return; {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {3704#true} assume true; {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {3704#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 6: Hoare triple {3704#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {3704#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 4: Hoare triple {3704#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L290 TraceCheckUtils]: 3: Hoare triple {3704#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {3704#true} is VALID [2022-02-20 23:37:34,103 INFO L272 TraceCheckUtils]: 2: Hoare triple {3704#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {3704#true} is VALID [2022-02-20 23:37:34,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {3704#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {3704#true} is VALID [2022-02-20 23:37:34,104 INFO L290 TraceCheckUtils]: 0: Hoare triple {3704#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {3704#true} is VALID [2022-02-20 23:37:34,105 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 27 proven. 10 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:34,105 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:34,105 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [399272452] [2022-02-20 23:37:34,105 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [399272452] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:37:34,105 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:34,105 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10] total 16 [2022-02-20 23:37:34,106 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1569600264] [2022-02-20 23:37:34,106 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:34,113 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 51 [2022-02-20 23:37:34,114 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:34,115 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:34,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:34,204 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:37:34,204 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:34,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:37:34,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=225, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:37:34,205 INFO L87 Difference]: Start difference. First operand 76 states and 86 transitions. Second operand has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:36,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:36,847 INFO L93 Difference]: Finished difference Result 127 states and 138 transitions. [2022-02-20 23:37:36,847 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:37:36,847 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 51 [2022-02-20 23:37:36,847 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:36,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:36,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 132 transitions. [2022-02-20 23:37:36,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:36,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 132 transitions. [2022-02-20 23:37:36,852 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 132 transitions. [2022-02-20 23:37:37,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:37,005 INFO L225 Difference]: With dead ends: 127 [2022-02-20 23:37:37,005 INFO L226 Difference]: Without dead ends: 127 [2022-02-20 23:37:37,005 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 83 SyntacticMatches, 3 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 143 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=173, Invalid=697, Unknown=0, NotChecked=0, Total=870 [2022-02-20 23:37:37,006 INFO L933 BasicCegarLoop]: 32 mSDtfsCounter, 142 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 564 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 142 SdHoareTripleChecker+Valid, 251 SdHoareTripleChecker+Invalid, 587 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 564 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:37,006 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [142 Valid, 251 Invalid, 587 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 564 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 23:37:37,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-02-20 23:37:37,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 83. [2022-02-20 23:37:37,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:37,011 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:37,011 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:37,011 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:37,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:37,015 INFO L93 Difference]: Finished difference Result 127 states and 138 transitions. [2022-02-20 23:37:37,015 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 138 transitions. [2022-02-20 23:37:37,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:37,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:37,016 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 127 states. [2022-02-20 23:37:37,016 INFO L87 Difference]: Start difference. First operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 127 states. [2022-02-20 23:37:37,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:37,019 INFO L93 Difference]: Finished difference Result 127 states and 138 transitions. [2022-02-20 23:37:37,019 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 138 transitions. [2022-02-20 23:37:37,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:37,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:37,020 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:37,020 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:37,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 65 states have (on average 1.3384615384615384) internal successors, (87), 76 states have internal predecessors, (87), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:37,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 95 transitions. [2022-02-20 23:37:37,022 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 95 transitions. Word has length 51 [2022-02-20 23:37:37,022 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:37,022 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 95 transitions. [2022-02-20 23:37:37,022 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 3.3125) internal successors, (53), 14 states have internal predecessors, (53), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:37,022 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 95 transitions. [2022-02-20 23:37:37,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 23:37:37,023 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:37,023 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 2, 2, 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:37,041 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:37:37,242 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:37:37,242 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:37,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:37,242 INFO L85 PathProgramCache]: Analyzing trace with hash 1986857553, now seen corresponding path program 1 times [2022-02-20 23:37:37,243 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:37,243 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [193283278] [2022-02-20 23:37:37,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:37,243 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:37,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:37,244 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:37:37,247 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:37:37,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:37,551 INFO L263 TraceCheckSpWp]: Trace formula consists of 380 conjuncts, 30 conjunts are in the unsatisfiable core [2022-02-20 23:37:37,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:37,574 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:37,632 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:37:37,858 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:37,866 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:37,981 INFO L356 Elim1Store]: treesize reduction 33, result has 25.0 percent of original size [2022-02-20 23:37:37,982 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 18 treesize of output 20 [2022-02-20 23:37:38,173 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:38,182 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2022-02-20 23:37:38,257 INFO L290 TraceCheckUtils]: 0: Hoare triple {4514#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {4514#true} is VALID [2022-02-20 23:37:38,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {4514#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {4514#true} is VALID [2022-02-20 23:37:38,257 INFO L272 TraceCheckUtils]: 2: Hoare triple {4514#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {4514#true} is VALID [2022-02-20 23:37:38,257 INFO L290 TraceCheckUtils]: 3: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4514#true} is VALID [2022-02-20 23:37:38,257 INFO L290 TraceCheckUtils]: 4: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4514#true} is VALID [2022-02-20 23:37:38,257 INFO L290 TraceCheckUtils]: 5: Hoare triple {4514#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 6: Hoare triple {4514#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 7: Hoare triple {4514#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 8: Hoare triple {4514#true} assume true; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {4514#true} {4514#true} #103#return; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 10: Hoare triple {4514#true} havoc main_#t~ret7#1; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L272 TraceCheckUtils]: 11: Hoare triple {4514#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 13: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 14: Hoare triple {4514#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 15: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4514#true} is VALID [2022-02-20 23:37:38,258 INFO L290 TraceCheckUtils]: 16: Hoare triple {4514#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4514#true} is VALID [2022-02-20 23:37:38,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {4514#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4514#true} is VALID [2022-02-20 23:37:38,259 INFO L290 TraceCheckUtils]: 18: Hoare triple {4514#true} assume true; {4514#true} is VALID [2022-02-20 23:37:38,259 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4514#true} {4514#true} #105#return; {4514#true} is VALID [2022-02-20 23:37:38,259 INFO L290 TraceCheckUtils]: 20: Hoare triple {4514#true} havoc main_#t~ret8#1; {4514#true} is VALID [2022-02-20 23:37:38,259 INFO L272 TraceCheckUtils]: 21: Hoare triple {4514#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {4514#true} is VALID [2022-02-20 23:37:38,260 INFO L290 TraceCheckUtils]: 22: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,261 INFO L290 TraceCheckUtils]: 23: Hoare triple {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,262 INFO L290 TraceCheckUtils]: 24: Hoare triple {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,263 INFO L290 TraceCheckUtils]: 25: Hoare triple {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,263 INFO L290 TraceCheckUtils]: 26: Hoare triple {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,264 INFO L290 TraceCheckUtils]: 27: Hoare triple {4585#(and (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:38,264 INFO L290 TraceCheckUtils]: 28: Hoare triple {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:38,265 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {4514#true} #107#return; {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:38,266 INFO L290 TraceCheckUtils]: 30: Hoare triple {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret9#1; {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:38,267 INFO L272 TraceCheckUtils]: 31: Hoare triple {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {4614#(and (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} is VALID [2022-02-20 23:37:38,267 INFO L290 TraceCheckUtils]: 32: Hoare triple {4614#(and (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,268 INFO L290 TraceCheckUtils]: 33: Hoare triple {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,269 INFO L290 TraceCheckUtils]: 34: Hoare triple {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,270 INFO L290 TraceCheckUtils]: 35: Hoare triple {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:38,271 INFO L290 TraceCheckUtils]: 36: Hoare triple {4618#(and (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4631#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:38,272 INFO L290 TraceCheckUtils]: 37: Hoare triple {4631#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4635#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:37:38,272 INFO L290 TraceCheckUtils]: 38: Hoare triple {4635#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} assume true; {4635#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:37:38,275 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4635#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} {4601#(and (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} #109#return; {4642#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:38,275 INFO L290 TraceCheckUtils]: 40: Hoare triple {4642#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,276 INFO L290 TraceCheckUtils]: 41: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,277 INFO L290 TraceCheckUtils]: 42: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,278 INFO L290 TraceCheckUtils]: 43: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,280 INFO L290 TraceCheckUtils]: 46: Hoare triple {4646#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {4665#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:37:38,280 INFO L290 TraceCheckUtils]: 47: Hoare triple {4665#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,281 INFO L290 TraceCheckUtils]: 48: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:38,282 INFO L290 TraceCheckUtils]: 50: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, search_list_~l#1.offset), #length[search_list_~l#1.base]) && ~bvule32(search_list_~l#1.offset, ~bvadd32(4bv32, search_list_~l#1.offset))) && ~bvule32(0bv32, search_list_~l#1.offset)); {4515#false} is VALID [2022-02-20 23:37:38,283 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 34 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:38,283 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:38,972 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:38,972 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [193283278] [2022-02-20 23:37:38,973 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [193283278] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:37:38,973 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [2110711972] [2022-02-20 23:37:38,973 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:38,973 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:37:38,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:37:38,974 INFO L229 MonitoredProcess]: Starting monitored process 12 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:38,975 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (12)] Waiting until timeout for monitored process [2022-02-20 23:37:39,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:39,469 INFO L263 TraceCheckSpWp]: Trace formula consists of 380 conjuncts, 34 conjunts are in the unsatisfiable core [2022-02-20 23:37:39,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:39,496 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:39,560 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:37:39,566 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:37:39,929 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:39,937 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:40,140 INFO L356 Elim1Store]: treesize reduction 4, result has 71.4 percent of original size [2022-02-20 23:37:40,141 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 18 [2022-02-20 23:37:40,157 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 18 treesize of output 20 [2022-02-20 23:37:40,350 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:40,353 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:40,385 INFO L290 TraceCheckUtils]: 0: Hoare triple {4514#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {4514#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L272 TraceCheckUtils]: 2: Hoare triple {4514#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 3: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 4: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 5: Hoare triple {4514#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 6: Hoare triple {4514#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {4514#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 8: Hoare triple {4514#true} assume true; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {4514#true} {4514#true} #103#return; {4514#true} is VALID [2022-02-20 23:37:40,385 INFO L290 TraceCheckUtils]: 10: Hoare triple {4514#true} havoc main_#t~ret7#1; {4514#true} is VALID [2022-02-20 23:37:40,391 INFO L272 TraceCheckUtils]: 11: Hoare triple {4514#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {4514#true} is VALID [2022-02-20 23:37:40,391 INFO L290 TraceCheckUtils]: 12: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4514#true} is VALID [2022-02-20 23:37:40,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4514#true} is VALID [2022-02-20 23:37:40,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {4514#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4514#true} is VALID [2022-02-20 23:37:40,392 INFO L290 TraceCheckUtils]: 15: Hoare triple {4514#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4514#true} is VALID [2022-02-20 23:37:40,392 INFO L290 TraceCheckUtils]: 16: Hoare triple {4514#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4514#true} is VALID [2022-02-20 23:37:40,392 INFO L290 TraceCheckUtils]: 17: Hoare triple {4514#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4514#true} is VALID [2022-02-20 23:37:40,394 INFO L290 TraceCheckUtils]: 18: Hoare triple {4514#true} assume true; {4514#true} is VALID [2022-02-20 23:37:40,394 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4514#true} {4514#true} #105#return; {4514#true} is VALID [2022-02-20 23:37:40,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {4514#true} havoc main_#t~ret8#1; {4514#true} is VALID [2022-02-20 23:37:40,394 INFO L272 TraceCheckUtils]: 21: Hoare triple {4514#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {4514#true} is VALID [2022-02-20 23:37:40,396 INFO L290 TraceCheckUtils]: 22: Hoare triple {4514#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,397 INFO L290 TraceCheckUtils]: 23: Hoare triple {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,398 INFO L290 TraceCheckUtils]: 24: Hoare triple {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,399 INFO L290 TraceCheckUtils]: 25: Hoare triple {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,400 INFO L290 TraceCheckUtils]: 26: Hoare triple {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,400 INFO L290 TraceCheckUtils]: 27: Hoare triple {4786#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:40,401 INFO L290 TraceCheckUtils]: 28: Hoare triple {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:40,402 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {4514#true} #107#return; {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:40,402 INFO L290 TraceCheckUtils]: 30: Hoare triple {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret9#1; {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:37:40,403 INFO L272 TraceCheckUtils]: 31: Hoare triple {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {4815#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} is VALID [2022-02-20 23:37:40,404 INFO L290 TraceCheckUtils]: 32: Hoare triple {4815#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,405 INFO L290 TraceCheckUtils]: 33: Hoare triple {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,407 INFO L290 TraceCheckUtils]: 34: Hoare triple {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,408 INFO L290 TraceCheckUtils]: 35: Hoare triple {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:40,409 INFO L290 TraceCheckUtils]: 36: Hoare triple {4819#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {4832#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:40,419 INFO L290 TraceCheckUtils]: 37: Hoare triple {4832#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (exists ((v_ArrVal_1220 (_ BitVec 32))) (= (store |old(#length)| insert_list_~l.base v_ArrVal_1220) |#length|)) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {4836#(and (exists ((v_ArrVal_1220 (_ BitVec 32))) (= |#length| (store |old(#length)| ~head~0.base v_ArrVal_1220))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:40,421 INFO L290 TraceCheckUtils]: 38: Hoare triple {4836#(and (exists ((v_ArrVal_1220 (_ BitVec 32))) (= |#length| (store |old(#length)| ~head~0.base v_ArrVal_1220))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {4836#(and (exists ((v_ArrVal_1220 (_ BitVec 32))) (= |#length| (store |old(#length)| ~head~0.base v_ArrVal_1220))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:40,424 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4836#(and (exists ((v_ArrVal_1220 (_ BitVec 32))) (= |#length| (store |old(#length)| ~head~0.base v_ArrVal_1220))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {4802#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} #109#return; {4843#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:40,425 INFO L290 TraceCheckUtils]: 40: Hoare triple {4843#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,426 INFO L290 TraceCheckUtils]: 41: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,426 INFO L290 TraceCheckUtils]: 42: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,427 INFO L290 TraceCheckUtils]: 43: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,428 INFO L290 TraceCheckUtils]: 44: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,429 INFO L290 TraceCheckUtils]: 45: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:40,430 INFO L290 TraceCheckUtils]: 46: Hoare triple {4847#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {4665#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:37:40,430 INFO L290 TraceCheckUtils]: 47: Hoare triple {4665#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:40,431 INFO L290 TraceCheckUtils]: 48: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:40,431 INFO L290 TraceCheckUtils]: 49: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:37:40,432 INFO L290 TraceCheckUtils]: 50: Hoare triple {4669#(and (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, search_list_~l#1.offset), #length[search_list_~l#1.base]) && ~bvule32(search_list_~l#1.offset, ~bvadd32(4bv32, search_list_~l#1.offset))) && ~bvule32(0bv32, search_list_~l#1.offset)); {4515#false} is VALID [2022-02-20 23:37:40,433 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 27 proven. 10 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:40,433 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:41,707 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [2110711972] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:37:41,707 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:41,707 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2022-02-20 23:37:41,707 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2001093517] [2022-02-20 23:37:41,707 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:41,708 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 51 [2022-02-20 23:37:41,708 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:41,711 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:41,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:41,807 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:37:41,808 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:41,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:37:41,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=581, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:37:41,809 INFO L87 Difference]: Start difference. First operand 83 states and 95 transitions. Second operand has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:46,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:46,114 INFO L93 Difference]: Finished difference Result 155 states and 168 transitions. [2022-02-20 23:37:46,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-02-20 23:37:46,114 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 51 [2022-02-20 23:37:46,115 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:46,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:46,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 156 transitions. [2022-02-20 23:37:46,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:46,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 156 transitions. [2022-02-20 23:37:46,119 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 156 transitions. [2022-02-20 23:37:46,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 156 edges. 156 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:46,348 INFO L225 Difference]: With dead ends: 155 [2022-02-20 23:37:46,349 INFO L226 Difference]: Without dead ends: 155 [2022-02-20 23:37:46,349 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 102 SyntacticMatches, 0 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 323 ImplicationChecksByTransitivity, 2.7s TimeCoverageRelationStatistics Valid=269, Invalid=1453, Unknown=0, NotChecked=0, Total=1722 [2022-02-20 23:37:46,350 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 345 mSDsluCounter, 260 mSDsCounter, 0 mSdLazyCounter, 505 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 345 SdHoareTripleChecker+Valid, 290 SdHoareTripleChecker+Invalid, 698 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 505 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 155 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:46,351 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [345 Valid, 290 Invalid, 698 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 505 Invalid, 0 Unknown, 155 Unchecked, 1.3s Time] [2022-02-20 23:37:46,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-02-20 23:37:46,367 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 86. [2022-02-20 23:37:46,368 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:46,368 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:46,368 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:46,369 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:46,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:46,371 INFO L93 Difference]: Finished difference Result 155 states and 168 transitions. [2022-02-20 23:37:46,371 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 168 transitions. [2022-02-20 23:37:46,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:46,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:46,372 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 155 states. [2022-02-20 23:37:46,374 INFO L87 Difference]: Start difference. First operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 155 states. [2022-02-20 23:37:46,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:46,377 INFO L93 Difference]: Finished difference Result 155 states and 168 transitions. [2022-02-20 23:37:46,377 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 168 transitions. [2022-02-20 23:37:46,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:46,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:46,379 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:46,379 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:46,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 79 states have internal predecessors, (90), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:46,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 98 transitions. [2022-02-20 23:37:46,381 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 98 transitions. Word has length 51 [2022-02-20 23:37:46,382 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:46,382 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 98 transitions. [2022-02-20 23:37:46,382 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 3.210526315789474) internal successors, (61), 16 states have internal predecessors, (61), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:46,382 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 98 transitions. [2022-02-20 23:37:46,382 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-02-20 23:37:46,383 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:46,383 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 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:46,397 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:37:46,601 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:37:46,797 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt [2022-02-20 23:37:46,797 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr6ASSERT_VIOLATIONMEMORY_LEAK === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:46,798 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:46,798 INFO L85 PathProgramCache]: Analyzing trace with hash -105219752, now seen corresponding path program 1 times [2022-02-20 23:37:46,798 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:46,798 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1524258305] [2022-02-20 23:37:46,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:46,798 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:46,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:46,800 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:37:46,802 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:37:47,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:47,131 INFO L263 TraceCheckSpWp]: Trace formula consists of 382 conjuncts, 16 conjunts are in the unsatisfiable core [2022-02-20 23:37:47,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:47,154 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:47,278 INFO L356 Elim1Store]: treesize reduction 157, result has 14.7 percent of original size [2022-02-20 23:37:47,279 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 3 case distinctions, treesize of input 27 treesize of output 36 [2022-02-20 23:37:47,303 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:37:47,304 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 22 treesize of output 21 [2022-02-20 23:37:47,384 INFO L356 Elim1Store]: treesize reduction 66, result has 1.5 percent of original size [2022-02-20 23:37:47,384 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 39 treesize of output 13 [2022-02-20 23:37:47,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {5499#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {5499#true} is VALID [2022-02-20 23:37:47,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {5499#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {5499#true} is VALID [2022-02-20 23:37:47,428 INFO L272 TraceCheckUtils]: 2: Hoare triple {5499#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {5499#true} is VALID [2022-02-20 23:37:47,428 INFO L290 TraceCheckUtils]: 3: Hoare triple {5499#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 4: Hoare triple {5499#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {5499#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 6: Hoare triple {5499#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {5499#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {5499#true} assume true; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {5499#true} {5499#true} #103#return; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 10: Hoare triple {5499#true} havoc main_#t~ret7#1; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L272 TraceCheckUtils]: 11: Hoare triple {5499#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 12: Hoare triple {5499#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 13: Hoare triple {5499#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 14: Hoare triple {5499#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 15: Hoare triple {5499#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 16: Hoare triple {5499#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 17: Hoare triple {5499#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L290 TraceCheckUtils]: 18: Hoare triple {5499#true} assume true; {5499#true} is VALID [2022-02-20 23:37:47,429 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5499#true} {5499#true} #105#return; {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L290 TraceCheckUtils]: 20: Hoare triple {5499#true} havoc main_#t~ret8#1; {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L272 TraceCheckUtils]: 21: Hoare triple {5499#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L290 TraceCheckUtils]: 22: Hoare triple {5499#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L290 TraceCheckUtils]: 23: Hoare triple {5499#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L290 TraceCheckUtils]: 24: Hoare triple {5499#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {5499#true} is VALID [2022-02-20 23:37:47,430 INFO L290 TraceCheckUtils]: 25: Hoare triple {5499#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L290 TraceCheckUtils]: 26: Hoare triple {5499#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L290 TraceCheckUtils]: 27: Hoare triple {5499#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L290 TraceCheckUtils]: 28: Hoare triple {5499#true} assume true; {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {5499#true} {5499#true} #107#return; {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L290 TraceCheckUtils]: 30: Hoare triple {5499#true} havoc main_#t~ret9#1; {5499#true} is VALID [2022-02-20 23:37:47,431 INFO L272 TraceCheckUtils]: 31: Hoare triple {5499#true} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {5499#true} is VALID [2022-02-20 23:37:47,432 INFO L290 TraceCheckUtils]: 32: Hoare triple {5499#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {5600#(= |insert_list_#in~k| insert_list_~k)} is VALID [2022-02-20 23:37:47,432 INFO L290 TraceCheckUtils]: 33: Hoare triple {5600#(= |insert_list_#in~k| insert_list_~k)} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {5600#(= |insert_list_#in~k| insert_list_~k)} is VALID [2022-02-20 23:37:47,432 INFO L290 TraceCheckUtils]: 34: Hoare triple {5600#(= |insert_list_#in~k| insert_list_~k)} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {5600#(= |insert_list_#in~k| insert_list_~k)} is VALID [2022-02-20 23:37:47,435 INFO L290 TraceCheckUtils]: 35: Hoare triple {5600#(= |insert_list_#in~k| insert_list_~k)} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {5610#(= (select (select |#memory_int| insert_list_~l.base) insert_list_~l.offset) ((_ extract 7 0) |insert_list_#in~k|))} is VALID [2022-02-20 23:37:47,436 INFO L290 TraceCheckUtils]: 36: Hoare triple {5610#(= (select (select |#memory_int| insert_list_~l.base) insert_list_~l.offset) ((_ extract 7 0) |insert_list_#in~k|))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {5610#(= (select (select |#memory_int| insert_list_~l.base) insert_list_~l.offset) ((_ extract 7 0) |insert_list_#in~k|))} is VALID [2022-02-20 23:37:47,437 INFO L290 TraceCheckUtils]: 37: Hoare triple {5610#(= (select (select |#memory_int| insert_list_~l.base) insert_list_~l.offset) ((_ extract 7 0) |insert_list_#in~k|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {5617#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) ((_ extract 7 0) |insert_list_#in~k|))} is VALID [2022-02-20 23:37:47,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {5617#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) ((_ extract 7 0) |insert_list_#in~k|))} assume true; {5617#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) ((_ extract 7 0) |insert_list_#in~k|))} is VALID [2022-02-20 23:37:47,438 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5617#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) ((_ extract 7 0) |insert_list_#in~k|))} {5499#true} #109#return; {5624#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) (_ bv3 8))} is VALID [2022-02-20 23:37:47,438 INFO L290 TraceCheckUtils]: 40: Hoare triple {5624#(= (select (select |#memory_int| ~head~0.base) ~head~0.offset) (_ bv3 8))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} is VALID [2022-02-20 23:37:47,439 INFO L290 TraceCheckUtils]: 41: Hoare triple {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} is VALID [2022-02-20 23:37:47,439 INFO L290 TraceCheckUtils]: 42: Hoare triple {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} assume search_list_#t~short4#1; {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 43: Hoare triple {5628#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (= (select (select |#memory_int| |ULTIMATE.start_search_list_~l#1.base|) |ULTIMATE.start_search_list_~l#1.offset|) (_ bv3 8)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {5638#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (exists ((v_arrayElimCell_14 (_ BitVec 8)) (v_arrayElimCell_13 (_ BitVec 8)) (v_arrayElimCell_15 (_ BitVec 8))) (= |ULTIMATE.start_search_list_#t~mem3#1| (concat (concat (concat v_arrayElimCell_13 v_arrayElimCell_15) v_arrayElimCell_14) (_ bv3 8)))))} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 44: Hoare triple {5638#(and (= (_ bv2 32) |ULTIMATE.start_search_list_~k#1|) (exists ((v_arrayElimCell_14 (_ BitVec 8)) (v_arrayElimCell_13 (_ BitVec 8)) (v_arrayElimCell_15 (_ BitVec 8))) (= |ULTIMATE.start_search_list_#t~mem3#1| (concat (concat (concat v_arrayElimCell_13 v_arrayElimCell_15) v_arrayElimCell_14) (_ bv3 8)))))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {5642#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 45: Hoare triple {5642#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {5500#false} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 46: Hoare triple {5500#false} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {5500#false} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 47: Hoare triple {5500#false} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {5500#false} is VALID [2022-02-20 23:37:47,441 INFO L290 TraceCheckUtils]: 48: Hoare triple {5500#false} SUMMARY for call main_#t~mem12#1 := read~intINTTYPE4(main_~temp~0#1.base, main_~temp~0#1.offset, 4bv32); srcloc: L561 {5500#false} is VALID [2022-02-20 23:37:47,442 INFO L290 TraceCheckUtils]: 49: Hoare triple {5500#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 1bv32 == main_#t~mem12#1 then 1bv32 else 0bv32);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {5500#false} is VALID [2022-02-20 23:37:47,442 INFO L290 TraceCheckUtils]: 50: Hoare triple {5500#false} assume 0bv32 == __VERIFIER_assert_~cond#1; {5500#false} is VALID [2022-02-20 23:37:47,442 INFO L290 TraceCheckUtils]: 51: Hoare triple {5500#false} assume !false; {5500#false} is VALID [2022-02-20 23:37:47,442 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-02-20 23:37:47,442 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:37:47,442 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:47,442 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1524258305] [2022-02-20 23:37:47,443 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1524258305] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:37:47,443 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:37:47,443 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:37:47,443 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2130602916] [2022-02-20 23:37:47,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:37:47,443 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 52 [2022-02-20 23:37:47,444 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:47,444 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:47,497 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:47,497 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:37:47,497 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:47,498 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:37:47,498 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:37:47,498 INFO L87 Difference]: Start difference. First operand 86 states and 98 transitions. Second operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:48,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:48,267 INFO L93 Difference]: Finished difference Result 83 states and 94 transitions. [2022-02-20 23:37:48,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:37:48,267 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 52 [2022-02-20 23:37:48,267 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:48,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:48,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 64 transitions. [2022-02-20 23:37:48,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:48,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 64 transitions. [2022-02-20 23:37:48,269 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 64 transitions. [2022-02-20 23:37:48,329 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:48,330 INFO L225 Difference]: With dead ends: 83 [2022-02-20 23:37:48,330 INFO L226 Difference]: Without dead ends: 83 [2022-02-20 23:37:48,331 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=43, Invalid=139, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:37:48,331 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 16 mSDsluCounter, 243 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 15 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:48,331 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 287 Invalid, 152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 130 Invalid, 0 Unknown, 15 Unchecked, 0.2s Time] [2022-02-20 23:37:48,332 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-02-20 23:37:48,333 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2022-02-20 23:37:48,333 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:48,334 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:48,334 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:48,334 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:48,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:48,336 INFO L93 Difference]: Finished difference Result 83 states and 94 transitions. [2022-02-20 23:37:48,336 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 94 transitions. [2022-02-20 23:37:48,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:48,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:48,336 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 83 states. [2022-02-20 23:37:48,337 INFO L87 Difference]: Start difference. First operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 83 states. [2022-02-20 23:37:48,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:48,338 INFO L93 Difference]: Finished difference Result 83 states and 94 transitions. [2022-02-20 23:37:48,338 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 94 transitions. [2022-02-20 23:37:48,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:48,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:48,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:48,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:48,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 65 states have (on average 1.323076923076923) internal successors, (86), 76 states have internal predecessors, (86), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:48,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 94 transitions. [2022-02-20 23:37:48,341 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 94 transitions. Word has length 52 [2022-02-20 23:37:48,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:48,341 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 94 transitions. [2022-02-20 23:37:48,341 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 1 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 23:37:48,341 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 94 transitions. [2022-02-20 23:37:48,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-02-20 23:37:48,342 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:48,342 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:48,356 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:37:48,555 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:37:48,555 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:48,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:48,556 INFO L85 PathProgramCache]: Analyzing trace with hash 1534863564, now seen corresponding path program 1 times [2022-02-20 23:37:48,556 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:48,557 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1041414414] [2022-02-20 23:37:48,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:48,557 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:48,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:48,558 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:37:48,559 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:48,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:48,778 INFO L263 TraceCheckSpWp]: Trace formula consists of 385 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:37:48,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:48,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:48,920 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:49,067 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 8 [2022-02-20 23:37:49,120 INFO L290 TraceCheckUtils]: 0: Hoare triple {6005#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,120 INFO L290 TraceCheckUtils]: 1: Hoare triple {6005#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {6005#true} is VALID [2022-02-20 23:37:49,120 INFO L272 TraceCheckUtils]: 2: Hoare triple {6005#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 3: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 4: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 5: Hoare triple {6005#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 6: Hoare triple {6005#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 7: Hoare triple {6005#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 8: Hoare triple {6005#true} assume true; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {6005#true} {6005#true} #103#return; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L290 TraceCheckUtils]: 10: Hoare triple {6005#true} havoc main_#t~ret7#1; {6005#true} is VALID [2022-02-20 23:37:49,121 INFO L272 TraceCheckUtils]: 11: Hoare triple {6005#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 12: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 13: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 14: Hoare triple {6005#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 15: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 16: Hoare triple {6005#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 17: Hoare triple {6005#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 18: Hoare triple {6005#true} assume true; {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6005#true} {6005#true} #105#return; {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 20: Hoare triple {6005#true} havoc main_#t~ret8#1; {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L272 TraceCheckUtils]: 21: Hoare triple {6005#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {6005#true} is VALID [2022-02-20 23:37:49,122 INFO L290 TraceCheckUtils]: 22: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,123 INFO L290 TraceCheckUtils]: 23: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,123 INFO L290 TraceCheckUtils]: 24: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,124 INFO L290 TraceCheckUtils]: 25: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,124 INFO L290 TraceCheckUtils]: 26: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,129 INFO L290 TraceCheckUtils]: 27: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,130 INFO L290 TraceCheckUtils]: 28: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} assume true; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,130 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6092#(not (= (_ bv0 32) ~head~0.base))} {6005#true} #107#return; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,131 INFO L290 TraceCheckUtils]: 30: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} havoc main_#t~ret9#1; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,131 INFO L272 TraceCheckUtils]: 31: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {6105#(= |old(~head~0.base)| ~head~0.base)} is VALID [2022-02-20 23:37:49,132 INFO L290 TraceCheckUtils]: 32: Hoare triple {6105#(= |old(~head~0.base)| ~head~0.base)} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:49,133 INFO L290 TraceCheckUtils]: 33: Hoare triple {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:49,133 INFO L290 TraceCheckUtils]: 34: Hoare triple {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:49,134 INFO L290 TraceCheckUtils]: 35: Hoare triple {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:49,135 INFO L290 TraceCheckUtils]: 36: Hoare triple {6109#(and (= |old(~head~0.base)| ~head~0.base) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6122#(and (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:49,136 INFO L290 TraceCheckUtils]: 37: Hoare triple {6122#(and (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6126#(and (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:49,136 INFO L290 TraceCheckUtils]: 38: Hoare triple {6126#(and (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {6126#(and (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:37:49,137 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6126#(and (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {6092#(not (= (_ bv0 32) ~head~0.base))} #109#return; {6133#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:49,138 INFO L290 TraceCheckUtils]: 40: Hoare triple {6133#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= ~head~0.offset (_ bv0 32)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,138 INFO L290 TraceCheckUtils]: 41: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,139 INFO L290 TraceCheckUtils]: 42: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,139 INFO L290 TraceCheckUtils]: 43: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,140 INFO L290 TraceCheckUtils]: 44: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,140 INFO L290 TraceCheckUtils]: 45: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:49,140 INFO L290 TraceCheckUtils]: 46: Hoare triple {6137#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {6156#(not (= |ULTIMATE.start_search_list_#t~mem5#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,141 INFO L290 TraceCheckUtils]: 47: Hoare triple {6156#(not (= |ULTIMATE.start_search_list_#t~mem5#1.base| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {6160#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,141 INFO L290 TraceCheckUtils]: 48: Hoare triple {6160#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6164#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:49,141 INFO L290 TraceCheckUtils]: 49: Hoare triple {6164#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1; {6164#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:49,142 INFO L290 TraceCheckUtils]: 50: Hoare triple {6164#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6006#false} is VALID [2022-02-20 23:37:49,142 INFO L290 TraceCheckUtils]: 51: Hoare triple {6006#false} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {6006#false} is VALID [2022-02-20 23:37:49,142 INFO L290 TraceCheckUtils]: 52: Hoare triple {6006#false} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {6006#false} is VALID [2022-02-20 23:37:49,142 INFO L290 TraceCheckUtils]: 53: Hoare triple {6006#false} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {6006#false} is VALID [2022-02-20 23:37:49,142 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 27 proven. 10 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:49,142 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:49,508 INFO L290 TraceCheckUtils]: 53: Hoare triple {6006#false} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {6006#false} is VALID [2022-02-20 23:37:49,508 INFO L290 TraceCheckUtils]: 52: Hoare triple {6006#false} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {6006#false} is VALID [2022-02-20 23:37:49,508 INFO L290 TraceCheckUtils]: 51: Hoare triple {6006#false} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {6006#false} is VALID [2022-02-20 23:37:49,509 INFO L290 TraceCheckUtils]: 50: Hoare triple {6164#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6006#false} is VALID [2022-02-20 23:37:49,509 INFO L290 TraceCheckUtils]: 49: Hoare triple {6164#|ULTIMATE.start_search_list_#t~short4#1|} assume !search_list_#t~short4#1; {6164#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:49,509 INFO L290 TraceCheckUtils]: 48: Hoare triple {6160#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6164#|ULTIMATE.start_search_list_#t~short4#1|} is VALID [2022-02-20 23:37:49,510 INFO L290 TraceCheckUtils]: 47: Hoare triple {6156#(not (= |ULTIMATE.start_search_list_#t~mem5#1.base| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {6160#(not (= |ULTIMATE.start_search_list_~l#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,510 INFO L290 TraceCheckUtils]: 46: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {6156#(not (= |ULTIMATE.start_search_list_#t~mem5#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,510 INFO L290 TraceCheckUtils]: 45: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,511 INFO L290 TraceCheckUtils]: 44: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,511 INFO L290 TraceCheckUtils]: 43: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,512 INFO L290 TraceCheckUtils]: 42: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} assume search_list_#t~short4#1; {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,512 INFO L290 TraceCheckUtils]: 41: Hoare triple {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,512 INFO L290 TraceCheckUtils]: 40: Hoare triple {6220#(not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {6201#(not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,513 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6227#(or (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= |old(~head~0.base)| (_ bv0 32)))} {6092#(not (= (_ bv0 32) ~head~0.base))} #109#return; {6220#(not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)))} is VALID [2022-02-20 23:37:49,514 INFO L290 TraceCheckUtils]: 38: Hoare triple {6227#(or (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= |old(~head~0.base)| (_ bv0 32)))} assume true; {6227#(or (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,514 INFO L290 TraceCheckUtils]: 37: Hoare triple {6234#(or (= |old(~head~0.base)| (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) (_ bv0 32))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6227#(or (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32))) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,516 INFO L290 TraceCheckUtils]: 36: Hoare triple {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6234#(or (= |old(~head~0.base)| (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) (_ bv0 32))))} is VALID [2022-02-20 23:37:49,516 INFO L290 TraceCheckUtils]: 35: Hoare triple {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,517 INFO L290 TraceCheckUtils]: 33: Hoare triple {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,518 INFO L290 TraceCheckUtils]: 32: Hoare triple {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,519 INFO L272 TraceCheckUtils]: 31: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {6238#(or (not (= (_ bv0 32) ~head~0.base)) (= |old(~head~0.base)| (_ bv0 32)))} is VALID [2022-02-20 23:37:49,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} havoc main_#t~ret9#1; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,519 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6092#(not (= (_ bv0 32) ~head~0.base))} {6005#true} #107#return; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,520 INFO L290 TraceCheckUtils]: 28: Hoare triple {6092#(not (= (_ bv0 32) ~head~0.base))} assume true; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,520 INFO L290 TraceCheckUtils]: 27: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6092#(not (= (_ bv0 32) ~head~0.base))} is VALID [2022-02-20 23:37:49,521 INFO L290 TraceCheckUtils]: 26: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,521 INFO L290 TraceCheckUtils]: 25: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,522 INFO L290 TraceCheckUtils]: 23: Hoare triple {6076#(not (= insert_list_~l.base (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,522 INFO L290 TraceCheckUtils]: 22: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6076#(not (= insert_list_~l.base (_ bv0 32)))} is VALID [2022-02-20 23:37:49,522 INFO L272 TraceCheckUtils]: 21: Hoare triple {6005#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {6005#true} is VALID [2022-02-20 23:37:49,522 INFO L290 TraceCheckUtils]: 20: Hoare triple {6005#true} havoc main_#t~ret8#1; {6005#true} is VALID [2022-02-20 23:37:49,522 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6005#true} {6005#true} #105#return; {6005#true} is VALID [2022-02-20 23:37:49,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {6005#true} assume true; {6005#true} is VALID [2022-02-20 23:37:49,522 INFO L290 TraceCheckUtils]: 17: Hoare triple {6005#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 16: Hoare triple {6005#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 15: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 14: Hoare triple {6005#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 13: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 12: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L272 TraceCheckUtils]: 11: Hoare triple {6005#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 10: Hoare triple {6005#true} havoc main_#t~ret7#1; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {6005#true} {6005#true} #103#return; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 8: Hoare triple {6005#true} assume true; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 7: Hoare triple {6005#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 6: Hoare triple {6005#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 5: Hoare triple {6005#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 4: Hoare triple {6005#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 3: Hoare triple {6005#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L272 TraceCheckUtils]: 2: Hoare triple {6005#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {6005#true} is VALID [2022-02-20 23:37:49,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {6005#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {6005#true} is VALID [2022-02-20 23:37:49,524 INFO L290 TraceCheckUtils]: 0: Hoare triple {6005#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {6005#true} is VALID [2022-02-20 23:37:49,524 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 27 proven. 10 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:49,524 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:49,524 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1041414414] [2022-02-20 23:37:49,524 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1041414414] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:37:49,524 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:49,525 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12] total 18 [2022-02-20 23:37:49,525 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [840127049] [2022-02-20 23:37:49,525 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:49,525 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 54 [2022-02-20 23:37:49,526 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:49,526 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:49,601 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:49,601 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:37:49,601 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:49,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:37:49,602 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=263, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:37:49,602 INFO L87 Difference]: Start difference. First operand 83 states and 94 transitions. Second operand has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:51,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:51,910 INFO L93 Difference]: Finished difference Result 123 states and 132 transitions. [2022-02-20 23:37:51,910 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-02-20 23:37:51,911 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 54 [2022-02-20 23:37:51,911 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:37:51,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:51,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2022-02-20 23:37:51,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:51,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 125 transitions. [2022-02-20 23:37:51,914 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 125 transitions. [2022-02-20 23:37:52,058 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:52,060 INFO L225 Difference]: With dead ends: 123 [2022-02-20 23:37:52,060 INFO L226 Difference]: Without dead ends: 123 [2022-02-20 23:37:52,061 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 92 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 165 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=252, Invalid=1080, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 23:37:52,062 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 256 mSDsluCounter, 307 mSDsCounter, 0 mSdLazyCounter, 372 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 256 SdHoareTripleChecker+Valid, 347 SdHoareTripleChecker+Invalid, 412 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 372 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:37:52,062 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [256 Valid, 347 Invalid, 412 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 372 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:37:52,062 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states. [2022-02-20 23:37:52,064 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 82. [2022-02-20 23:37:52,065 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:37:52,065 INFO L82 GeneralOperation]: Start isEquivalent. First operand 123 states. Second operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:52,065 INFO L74 IsIncluded]: Start isIncluded. First operand 123 states. Second operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:52,066 INFO L87 Difference]: Start difference. First operand 123 states. Second operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:52,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:52,068 INFO L93 Difference]: Finished difference Result 123 states and 132 transitions. [2022-02-20 23:37:52,068 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 132 transitions. [2022-02-20 23:37:52,068 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:52,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:52,069 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 123 states. [2022-02-20 23:37:52,069 INFO L87 Difference]: Start difference. First operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 123 states. [2022-02-20 23:37:52,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:37:52,071 INFO L93 Difference]: Finished difference Result 123 states and 132 transitions. [2022-02-20 23:37:52,071 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 132 transitions. [2022-02-20 23:37:52,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:37:52,072 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:37:52,072 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:37:52,072 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:37:52,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 64 states have (on average 1.296875) internal successors, (83), 75 states have internal predecessors, (83), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:37:52,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 91 transitions. [2022-02-20 23:37:52,074 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 91 transitions. Word has length 54 [2022-02-20 23:37:52,074 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:37:52,074 INFO L470 AbstractCegarLoop]: Abstraction has 82 states and 91 transitions. [2022-02-20 23:37:52,074 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 3.111111111111111) internal successors, (56), 15 states have internal predecessors, (56), 2 states have call successors, (5), 3 states have call predecessors, (5), 4 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 23:37:52,074 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 91 transitions. [2022-02-20 23:37:52,075 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-02-20 23:37:52,075 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:37:52,075 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:37:52,091 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:52,288 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:52,289 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:37:52,289 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:37:52,289 INFO L85 PathProgramCache]: Analyzing trace with hash 527248649, now seen corresponding path program 1 times [2022-02-20 23:37:52,289 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:37:52,289 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2131850427] [2022-02-20 23:37:52,289 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:37:52,290 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:37:52,290 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:37:52,291 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:52,293 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:52,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:52,532 INFO L263 TraceCheckSpWp]: Trace formula consists of 391 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 23:37:52,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:37:52,558 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:37:52,671 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:37:52,788 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:52,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {6834#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {6834#true} is VALID [2022-02-20 23:37:52,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {6834#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {6834#true} is VALID [2022-02-20 23:37:52,916 INFO L272 TraceCheckUtils]: 2: Hoare triple {6834#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {6834#true} is VALID [2022-02-20 23:37:52,916 INFO L290 TraceCheckUtils]: 3: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6834#true} is VALID [2022-02-20 23:37:52,916 INFO L290 TraceCheckUtils]: 4: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6834#true} is VALID [2022-02-20 23:37:52,916 INFO L290 TraceCheckUtils]: 5: Hoare triple {6834#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 6: Hoare triple {6834#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 7: Hoare triple {6834#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 8: Hoare triple {6834#true} assume true; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {6834#true} {6834#true} #103#return; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 10: Hoare triple {6834#true} havoc main_#t~ret7#1; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L272 TraceCheckUtils]: 11: Hoare triple {6834#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 12: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 13: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6834#true} is VALID [2022-02-20 23:37:52,917 INFO L290 TraceCheckUtils]: 14: Hoare triple {6834#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L290 TraceCheckUtils]: 15: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L290 TraceCheckUtils]: 16: Hoare triple {6834#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L290 TraceCheckUtils]: 17: Hoare triple {6834#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L290 TraceCheckUtils]: 18: Hoare triple {6834#true} assume true; {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6834#true} {6834#true} #105#return; {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {6834#true} havoc main_#t~ret8#1; {6834#true} is VALID [2022-02-20 23:37:52,918 INFO L272 TraceCheckUtils]: 21: Hoare triple {6834#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {6834#true} is VALID [2022-02-20 23:37:52,927 INFO L290 TraceCheckUtils]: 22: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6905#(= (_ bv0 32) insert_list_~l.offset)} is VALID [2022-02-20 23:37:52,928 INFO L290 TraceCheckUtils]: 23: Hoare triple {6905#(= (_ bv0 32) insert_list_~l.offset)} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6905#(= (_ bv0 32) insert_list_~l.offset)} is VALID [2022-02-20 23:37:52,929 INFO L290 TraceCheckUtils]: 24: Hoare triple {6905#(= (_ bv0 32) insert_list_~l.offset)} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6905#(= (_ bv0 32) insert_list_~l.offset)} is VALID [2022-02-20 23:37:52,930 INFO L290 TraceCheckUtils]: 25: Hoare triple {6905#(= (_ bv0 32) insert_list_~l.offset)} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6905#(= (_ bv0 32) insert_list_~l.offset)} is VALID [2022-02-20 23:37:52,930 INFO L290 TraceCheckUtils]: 26: Hoare triple {6905#(= (_ bv0 32) insert_list_~l.offset)} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6905#(= (_ bv0 32) insert_list_~l.offset)} is VALID [2022-02-20 23:37:52,930 INFO L290 TraceCheckUtils]: 27: Hoare triple {6905#(= (_ bv0 32) insert_list_~l.offset)} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6921#(= ~head~0.offset (_ bv0 32))} is VALID [2022-02-20 23:37:52,931 INFO L290 TraceCheckUtils]: 28: Hoare triple {6921#(= ~head~0.offset (_ bv0 32))} assume true; {6921#(= ~head~0.offset (_ bv0 32))} is VALID [2022-02-20 23:37:52,931 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6921#(= ~head~0.offset (_ bv0 32))} {6834#true} #107#return; {6921#(= ~head~0.offset (_ bv0 32))} is VALID [2022-02-20 23:37:52,932 INFO L290 TraceCheckUtils]: 30: Hoare triple {6921#(= ~head~0.offset (_ bv0 32))} havoc main_#t~ret9#1; {6921#(= ~head~0.offset (_ bv0 32))} is VALID [2022-02-20 23:37:52,932 INFO L272 TraceCheckUtils]: 31: Hoare triple {6921#(= ~head~0.offset (_ bv0 32))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {6934#(= |old(~head~0.offset)| ~head~0.offset)} is VALID [2022-02-20 23:37:52,933 INFO L290 TraceCheckUtils]: 32: Hoare triple {6934#(= |old(~head~0.offset)| ~head~0.offset)} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:52,933 INFO L290 TraceCheckUtils]: 33: Hoare triple {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:52,934 INFO L290 TraceCheckUtils]: 34: Hoare triple {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:52,934 INFO L290 TraceCheckUtils]: 35: Hoare triple {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:52,935 INFO L290 TraceCheckUtils]: 36: Hoare triple {6938#(and (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6951#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:52,936 INFO L290 TraceCheckUtils]: 37: Hoare triple {6951#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6955#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:52,936 INFO L290 TraceCheckUtils]: 38: Hoare triple {6955#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)))} assume true; {6955#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:52,937 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6955#(and (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)))} {6921#(= ~head~0.offset (_ bv0 32))} #109#return; {6962#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:37:52,938 INFO L290 TraceCheckUtils]: 40: Hoare triple {6962#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,938 INFO L290 TraceCheckUtils]: 41: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,938 INFO L290 TraceCheckUtils]: 42: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,939 INFO L290 TraceCheckUtils]: 43: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,939 INFO L290 TraceCheckUtils]: 44: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,940 INFO L290 TraceCheckUtils]: 45: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,940 INFO L290 TraceCheckUtils]: 46: Hoare triple {6966#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {6985#(= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:37:52,940 INFO L290 TraceCheckUtils]: 47: Hoare triple {6985#(= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} is VALID [2022-02-20 23:37:52,941 INFO L290 TraceCheckUtils]: 48: Hoare triple {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} is VALID [2022-02-20 23:37:52,941 INFO L290 TraceCheckUtils]: 49: Hoare triple {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} assume search_list_#t~short4#1; {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} is VALID [2022-02-20 23:37:52,942 INFO L290 TraceCheckUtils]: 50: Hoare triple {6989#(= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|)} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,942 INFO L290 TraceCheckUtils]: 51: Hoare triple {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,942 INFO L290 TraceCheckUtils]: 52: Hoare triple {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:52,943 INFO L290 TraceCheckUtils]: 53: Hoare triple {6999#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {7009#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_#res#1.offset|))} is VALID [2022-02-20 23:37:52,943 INFO L290 TraceCheckUtils]: 54: Hoare triple {7009#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (= (_ bv0 32) |ULTIMATE.start_search_list_#res#1.offset|))} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {7013#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (= |ULTIMATE.start_main_~temp~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:37:52,944 INFO L290 TraceCheckUtils]: 55: Hoare triple {7013#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (= |ULTIMATE.start_main_~temp~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {6835#false} is VALID [2022-02-20 23:37:52,944 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 34 proven. 5 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:52,944 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:37:53,155 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 8 treesize of output 6 [2022-02-20 23:37:54,293 INFO L290 TraceCheckUtils]: 55: Hoare triple {7017#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (bvule |ULTIMATE.start_main_~temp~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|)))} assume !((~bvule32(~bvadd32(4bv32, main_~temp~0#1.offset), #length[main_~temp~0#1.base]) && ~bvule32(main_~temp~0#1.offset, ~bvadd32(4bv32, main_~temp~0#1.offset))) && ~bvule32(0bv32, main_~temp~0#1.offset)); {6835#false} is VALID [2022-02-20 23:37:54,311 INFO L290 TraceCheckUtils]: 54: Hoare triple {7021#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (bvule |ULTIMATE.start_search_list_#res#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|)))} main_#t~ret11#1.base, main_#t~ret11#1.offset := search_list_#res#1.base, search_list_#res#1.offset;assume { :end_inline_search_list } true;main_~temp~0#1.base, main_~temp~0#1.offset := main_#t~ret11#1.base, main_#t~ret11#1.offset;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset; {7017#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|) (select |#length| |ULTIMATE.start_main_~temp~0#1.base|)) (bvule |ULTIMATE.start_main_~temp~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~temp~0#1.offset|)))} is VALID [2022-02-20 23:37:54,312 INFO L290 TraceCheckUtils]: 53: Hoare triple {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} search_list_#res#1.base, search_list_#res#1.offset := search_list_~l#1.base, search_list_~l#1.offset; {7021#(and (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|) (select |#length| |ULTIMATE.start_search_list_#res#1.base|)) (bvule |ULTIMATE.start_search_list_#res#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#res#1.offset|)))} is VALID [2022-02-20 23:37:54,312 INFO L290 TraceCheckUtils]: 52: Hoare triple {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} assume !search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} is VALID [2022-02-20 23:37:54,312 INFO L290 TraceCheckUtils]: 51: Hoare triple {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} is VALID [2022-02-20 23:37:54,313 INFO L290 TraceCheckUtils]: 50: Hoare triple {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {7025#(and (bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|) (select |#length| |ULTIMATE.start_search_list_~l#1.base|)))} is VALID [2022-02-20 23:37:54,313 INFO L290 TraceCheckUtils]: 49: Hoare triple {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:54,314 INFO L290 TraceCheckUtils]: 48: Hoare triple {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:54,314 INFO L290 TraceCheckUtils]: 47: Hoare triple {7045#(bvule |ULTIMATE.start_search_list_#t~mem5#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {7035#(bvule |ULTIMATE.start_search_list_~l#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:37:54,315 INFO L290 TraceCheckUtils]: 46: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {7045#(bvule |ULTIMATE.start_search_list_#t~mem5#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|))} is VALID [2022-02-20 23:37:54,315 INFO L290 TraceCheckUtils]: 45: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,316 INFO L290 TraceCheckUtils]: 43: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,316 INFO L290 TraceCheckUtils]: 42: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} assume search_list_#t~short4#1; {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,317 INFO L290 TraceCheckUtils]: 41: Hoare triple {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,317 INFO L290 TraceCheckUtils]: 40: Hoare triple {7068#(bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {7049#(bvule (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))} is VALID [2022-02-20 23:37:54,318 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7076#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))))} {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} #109#return; {7068#(bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))} is VALID [2022-02-20 23:37:54,318 INFO L290 TraceCheckUtils]: 38: Hoare triple {7076#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))))} assume true; {7076#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))))} is VALID [2022-02-20 23:37:54,319 INFO L290 TraceCheckUtils]: 37: Hoare triple {7083#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7076#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))))} is VALID [2022-02-20 23:37:54,324 INFO L290 TraceCheckUtils]: 36: Hoare triple {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7083#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)))))} is VALID [2022-02-20 23:37:54,324 INFO L290 TraceCheckUtils]: 35: Hoare triple {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} is VALID [2022-02-20 23:37:54,325 INFO L290 TraceCheckUtils]: 34: Hoare triple {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} is VALID [2022-02-20 23:37:54,325 INFO L290 TraceCheckUtils]: 33: Hoare triple {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} is VALID [2022-02-20 23:37:54,326 INFO L290 TraceCheckUtils]: 32: Hoare triple {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} is VALID [2022-02-20 23:37:54,326 INFO L272 TraceCheckUtils]: 31: Hoare triple {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {7087#(or (not (bvule |old(~head~0.offset)| (bvadd (_ bv4 32) |old(~head~0.offset)|))) (bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset)))} is VALID [2022-02-20 23:37:54,326 INFO L290 TraceCheckUtils]: 30: Hoare triple {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} havoc main_#t~ret9#1; {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} is VALID [2022-02-20 23:37:54,327 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} {6834#true} #107#return; {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} is VALID [2022-02-20 23:37:54,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} assume true; {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} is VALID [2022-02-20 23:37:54,328 INFO L290 TraceCheckUtils]: 27: Hoare triple {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7072#(bvule ~head~0.offset (bvadd (_ bv4 32) ~head~0.offset))} is VALID [2022-02-20 23:37:54,328 INFO L290 TraceCheckUtils]: 26: Hoare triple {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:54,329 INFO L290 TraceCheckUtils]: 25: Hoare triple {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:54,329 INFO L290 TraceCheckUtils]: 24: Hoare triple {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:54,329 INFO L290 TraceCheckUtils]: 23: Hoare triple {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:54,330 INFO L290 TraceCheckUtils]: 22: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7115#(bvule insert_list_~l.offset (bvadd (_ bv4 32) insert_list_~l.offset))} is VALID [2022-02-20 23:37:54,330 INFO L272 TraceCheckUtils]: 21: Hoare triple {6834#true} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {6834#true} is VALID [2022-02-20 23:37:54,330 INFO L290 TraceCheckUtils]: 20: Hoare triple {6834#true} havoc main_#t~ret8#1; {6834#true} is VALID [2022-02-20 23:37:54,330 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6834#true} {6834#true} #105#return; {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 18: Hoare triple {6834#true} assume true; {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 17: Hoare triple {6834#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 16: Hoare triple {6834#true} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 15: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {6834#true} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 13: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L290 TraceCheckUtils]: 12: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6834#true} is VALID [2022-02-20 23:37:54,331 INFO L272 TraceCheckUtils]: 11: Hoare triple {6834#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 10: Hoare triple {6834#true} havoc main_#t~ret7#1; {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {6834#true} {6834#true} #103#return; {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 8: Hoare triple {6834#true} assume true; {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 7: Hoare triple {6834#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 6: Hoare triple {6834#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 5: Hoare triple {6834#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {6834#true} is VALID [2022-02-20 23:37:54,332 INFO L290 TraceCheckUtils]: 4: Hoare triple {6834#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {6834#true} is VALID [2022-02-20 23:37:54,333 INFO L290 TraceCheckUtils]: 3: Hoare triple {6834#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {6834#true} is VALID [2022-02-20 23:37:54,333 INFO L272 TraceCheckUtils]: 2: Hoare triple {6834#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {6834#true} is VALID [2022-02-20 23:37:54,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {6834#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {6834#true} is VALID [2022-02-20 23:37:54,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {6834#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {6834#true} is VALID [2022-02-20 23:37:54,333 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 27 proven. 12 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:37:54,334 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:37:54,334 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2131850427] [2022-02-20 23:37:54,334 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2131850427] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:37:54,334 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:37:54,334 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 26 [2022-02-20 23:37:54,334 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [993562719] [2022-02-20 23:37:54,334 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:37:54,335 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 56 [2022-02-20 23:37:54,335 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:37:54,336 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:37:54,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:37:54,461 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-02-20 23:37:54,461 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:37:54,461 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-02-20 23:37:54,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=618, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:37:54,462 INFO L87 Difference]: Start difference. First operand 82 states and 91 transitions. Second operand has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:38:00,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:00,510 INFO L93 Difference]: Finished difference Result 139 states and 146 transitions. [2022-02-20 23:38:00,510 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-02-20 23:38:00,511 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) Word has length 56 [2022-02-20 23:38:00,511 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:38:00,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:38:00,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 147 transitions. [2022-02-20 23:38:00,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:38:00,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 147 transitions. [2022-02-20 23:38:00,514 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 147 transitions. [2022-02-20 23:38:00,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:38:00,804 INFO L225 Difference]: With dead ends: 139 [2022-02-20 23:38:00,804 INFO L226 Difference]: Without dead ends: 139 [2022-02-20 23:38:00,804 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 86 SyntacticMatches, 0 SemanticMatches, 47 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 439 ImplicationChecksByTransitivity, 2.3s TimeCoverageRelationStatistics Valid=383, Invalid=1969, Unknown=0, NotChecked=0, Total=2352 [2022-02-20 23:38:00,805 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 339 mSDsluCounter, 432 mSDsCounter, 0 mSdLazyCounter, 589 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 339 SdHoareTripleChecker+Valid, 465 SdHoareTripleChecker+Invalid, 637 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 589 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:38:00,805 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [339 Valid, 465 Invalid, 637 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 589 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-02-20 23:38:00,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-02-20 23:38:00,807 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 82. [2022-02-20 23:38:00,807 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:38:00,807 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:00,808 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:00,808 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:00,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:00,810 INFO L93 Difference]: Finished difference Result 139 states and 146 transitions. [2022-02-20 23:38:00,810 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 146 transitions. [2022-02-20 23:38:00,810 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:38:00,810 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:38:00,811 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 139 states. [2022-02-20 23:38:00,811 INFO L87 Difference]: Start difference. First operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 139 states. [2022-02-20 23:38:00,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:00,814 INFO L93 Difference]: Finished difference Result 139 states and 146 transitions. [2022-02-20 23:38:00,814 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 146 transitions. [2022-02-20 23:38:00,814 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:38:00,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:38:00,815 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:38:00,815 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:38:00,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 64 states have (on average 1.28125) internal successors, (82), 75 states have internal predecessors, (82), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:00,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 90 transitions. [2022-02-20 23:38:00,816 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 90 transitions. Word has length 56 [2022-02-20 23:38:00,817 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:38:00,817 INFO L470 AbstractCegarLoop]: Abstraction has 82 states and 90 transitions. [2022-02-20 23:38:00,817 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 24 states have internal predecessors, (75), 3 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 5 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:38:00,817 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 90 transitions. [2022-02-20 23:38:00,818 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-02-20 23:38:00,818 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:38:00,818 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:38:00,830 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:38:01,030 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:38:01,030 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:38:01,030 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:38:01,031 INFO L85 PathProgramCache]: Analyzing trace with hash -69599988, now seen corresponding path program 2 times [2022-02-20 23:38:01,031 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:38:01,031 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [998986073] [2022-02-20 23:38:01,031 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:38:01,031 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:38:01,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:38:01,033 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:38:01,033 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:38:01,510 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:38:01,511 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:38:01,528 INFO L263 TraceCheckSpWp]: Trace formula consists of 397 conjuncts, 45 conjunts are in the unsatisfiable core [2022-02-20 23:38:01,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:38:01,551 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:38:01,575 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:38:01,724 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:01,832 INFO L356 Elim1Store]: treesize reduction 33, result has 43.1 percent of original size [2022-02-20 23:38:01,833 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 24 treesize of output 37 [2022-02-20 23:38:02,140 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:02,151 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:02,318 INFO L356 Elim1Store]: treesize reduction 19, result has 47.2 percent of original size [2022-02-20 23:38:02,318 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 54 treesize of output 58 [2022-02-20 23:38:02,337 INFO L356 Elim1Store]: treesize reduction 42, result has 30.0 percent of original size [2022-02-20 23:38:02,337 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 24 treesize of output 29 [2022-02-20 23:38:02,354 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 38 treesize of output 18 [2022-02-20 23:38:03,110 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 83 treesize of output 67 [2022-02-20 23:38:04,035 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:04,035 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 68 treesize of output 43 [2022-02-20 23:38:04,154 INFO L290 TraceCheckUtils]: 0: Hoare triple {7737#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {7737#true} is VALID [2022-02-20 23:38:04,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {7737#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {7737#true} is VALID [2022-02-20 23:38:04,154 INFO L272 TraceCheckUtils]: 2: Hoare triple {7737#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {7737#true} is VALID [2022-02-20 23:38:04,157 INFO L290 TraceCheckUtils]: 3: Hoare triple {7737#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L290 TraceCheckUtils]: 4: Hoare triple {7737#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {7737#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L290 TraceCheckUtils]: 6: Hoare triple {7737#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {7737#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {7737#true} assume true; {7737#true} is VALID [2022-02-20 23:38:04,158 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {7737#true} {7737#true} #103#return; {7737#true} is VALID [2022-02-20 23:38:04,159 INFO L290 TraceCheckUtils]: 10: Hoare triple {7737#true} havoc main_#t~ret7#1; {7737#true} is VALID [2022-02-20 23:38:04,159 INFO L272 TraceCheckUtils]: 11: Hoare triple {7737#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {7737#true} is VALID [2022-02-20 23:38:04,160 INFO L290 TraceCheckUtils]: 12: Hoare triple {7737#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,160 INFO L290 TraceCheckUtils]: 13: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,161 INFO L290 TraceCheckUtils]: 15: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,162 INFO L290 TraceCheckUtils]: 17: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,162 INFO L290 TraceCheckUtils]: 18: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,163 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} {7737#true} #105#return; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,163 INFO L290 TraceCheckUtils]: 20: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret8#1; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:04,164 INFO L272 TraceCheckUtils]: 21: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {7807#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} is VALID [2022-02-20 23:38:04,165 INFO L290 TraceCheckUtils]: 22: Hoare triple {7807#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,166 INFO L290 TraceCheckUtils]: 23: Hoare triple {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,167 INFO L290 TraceCheckUtils]: 24: Hoare triple {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,168 INFO L290 TraceCheckUtils]: 25: Hoare triple {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,169 INFO L290 TraceCheckUtils]: 26: Hoare triple {7811#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7824#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:04,170 INFO L290 TraceCheckUtils]: 27: Hoare triple {7824#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| insert_list_~l.base v_ArrVal_1796) |#valid|)) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7828#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| ~head~0.base v_ArrVal_1796) |#valid|)) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:04,170 INFO L290 TraceCheckUtils]: 28: Hoare triple {7828#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| ~head~0.base v_ArrVal_1796) |#valid|)) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {7828#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| ~head~0.base v_ArrVal_1796) |#valid|)) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:04,172 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7828#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_ArrVal_1796 (_ BitVec 1))) (= (store |old(#valid)| ~head~0.base v_ArrVal_1796) |#valid|)) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} #107#return; {7835#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:04,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {7835#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} havoc main_#t~ret9#1; {7835#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:04,173 INFO L272 TraceCheckUtils]: 31: Hoare triple {7835#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {7842#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:04,174 INFO L290 TraceCheckUtils]: 32: Hoare triple {7842#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7846#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:04,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {7846#(and (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,186 WARN L290 TraceCheckUtils]: 35: Hoare triple {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is UNKNOWN [2022-02-20 23:38:04,189 INFO L290 TraceCheckUtils]: 36: Hoare triple {7850#(and (exists ((v_ArrVal_1800 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1800) |#memory_$Pointer$.base|)) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7860#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_1) |#memory_$Pointer$.base|))) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:04,189 INFO L290 TraceCheckUtils]: 37: Hoare triple {7860#(and (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_1) |#memory_$Pointer$.base|))) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7864#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_1) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))))} is VALID [2022-02-20 23:38:04,190 INFO L290 TraceCheckUtils]: 38: Hoare triple {7864#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_1) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))))} assume true; {7864#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_1) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))))} is VALID [2022-02-20 23:38:04,194 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7864#(and (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_1 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_1) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_1 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))))} {7835#(and (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} #109#return; {7871#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (select |#valid| ~head~0.base) (_ bv1 1)) (or (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))) (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))))) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base))) (= ~head~0.offset (_ bv0 32)))} is VALID [2022-02-20 23:38:04,196 INFO L290 TraceCheckUtils]: 40: Hoare triple {7871#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (select |#valid| ~head~0.base) (_ bv1 1)) (or (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))))) (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))))) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base))) (= ~head~0.offset (_ bv0 32)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,197 INFO L290 TraceCheckUtils]: 41: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,199 INFO L290 TraceCheckUtils]: 42: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,200 INFO L290 TraceCheckUtils]: 43: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,201 INFO L290 TraceCheckUtils]: 44: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,203 INFO L290 TraceCheckUtils]: 45: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,204 INFO L290 TraceCheckUtils]: 46: Hoare triple {7875#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)))))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (bvadd (_ bv4 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))))) (_ bv1 1)) (_ bv0 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {7894#(and (exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|)))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|))) (_ bv1 1)) (_ bv0 1)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:38:04,206 INFO L290 TraceCheckUtils]: 47: Hoare triple {7894#(and (exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (or (and (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) v_arrayElimCell_23)) (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23)))))) (and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|)))) (= (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_#t~mem5#1.offset|))) (_ bv1 1)) (_ bv0 1)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,207 INFO L290 TraceCheckUtils]: 48: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,208 INFO L290 TraceCheckUtils]: 49: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,210 INFO L290 TraceCheckUtils]: 50: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,211 INFO L290 TraceCheckUtils]: 51: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,213 INFO L290 TraceCheckUtils]: 52: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:04,214 INFO L290 TraceCheckUtils]: 53: Hoare triple {7898#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_24| (_ BitVec 32))) (and (or (and (exists ((v_arrayElimCell_23 (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| v_arrayElimCell_23))) (not (= v_arrayElimCell_23 (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))))) (= |v_ULTIMATE.start_search_list_~l#1.base_24| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)))) (and (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32))) (_ bv1 1))) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))) (_ bv4 32)))))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv1 1)) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_24|) (_ bv4 32))))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {7917#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:38:04,215 INFO L290 TraceCheckUtils]: 54: Hoare triple {7917#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:38:04,215 INFO L290 TraceCheckUtils]: 55: Hoare triple {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:38:04,215 INFO L290 TraceCheckUtils]: 56: Hoare triple {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume search_list_#t~short4#1; {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} is VALID [2022-02-20 23:38:04,216 INFO L290 TraceCheckUtils]: 57: Hoare triple {7921#(= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[search_list_~l#1.base]); {7738#false} is VALID [2022-02-20 23:38:04,216 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 27 proven. 27 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:38:04,216 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:38:04,693 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:04,694 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 27 [2022-02-20 23:38:04,704 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_~head~0.base_126 (_ BitVec 32)) (v_arrayElimArr_2 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= (_ bv0 1) (bvadd (bvneg (select (store |c_#valid| v_~head~0.base_126 (_ bv1 1)) (select (select (store |c_#memory_$Pointer$.base| v_~head~0.base_126 v_arrayElimArr_2) c_~head~0.base) (bvadd c_~head~0.offset (_ bv4 32))))) (_ bv1 1))) (not (= (select v_arrayElimArr_2 (_ bv4 32)) c_~head~0.base)))) is different from false [2022-02-20 23:38:04,705 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:38:04,705 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [998986073] [2022-02-20 23:38:04,705 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [998986073] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:38:04,706 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1029902612] [2022-02-20 23:38:04,706 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:38:04,706 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:38:04,706 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:38:04,707 INFO L229 MonitoredProcess]: Starting monitored process 17 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:38:04,709 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (17)] Waiting until timeout for monitored process [2022-02-20 23:38:05,208 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:38:05,208 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:38:05,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 397 conjuncts, 48 conjunts are in the unsatisfiable core [2022-02-20 23:38:05,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:38:05,236 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:38:05,268 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:38:05,408 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:05,566 INFO L356 Elim1Store]: treesize reduction 33, result has 43.1 percent of original size [2022-02-20 23:38:05,567 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 24 treesize of output 37 [2022-02-20 23:38:05,931 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:05,944 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:06,184 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:06,185 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 34 [2022-02-20 23:38:06,192 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:06,208 INFO L356 Elim1Store]: treesize reduction 45, result has 42.3 percent of original size [2022-02-20 23:38:06,209 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 41 treesize of output 61 [2022-02-20 23:38:06,618 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:38:07,019 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:38:07,019 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 65 treesize of output 32 [2022-02-20 23:38:07,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {7737#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {7737#true} is VALID [2022-02-20 23:38:07,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {7737#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L272 TraceCheckUtils]: 2: Hoare triple {7737#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 3: Hoare triple {7737#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 4: Hoare triple {7737#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {7737#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 6: Hoare triple {7737#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {7737#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {7737#true} assume true; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {7737#true} {7737#true} #103#return; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L290 TraceCheckUtils]: 10: Hoare triple {7737#true} havoc main_#t~ret7#1; {7737#true} is VALID [2022-02-20 23:38:07,659 INFO L272 TraceCheckUtils]: 11: Hoare triple {7737#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {7737#true} is VALID [2022-02-20 23:38:07,660 INFO L290 TraceCheckUtils]: 12: Hoare triple {7737#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,660 INFO L290 TraceCheckUtils]: 13: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,661 INFO L290 TraceCheckUtils]: 16: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {7778#(= (select |#valid| insert_list_~l.base) (_ bv1 1))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} assume true; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,662 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} {7737#true} #105#return; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} havoc main_#t~ret8#1; {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} is VALID [2022-02-20 23:38:07,663 INFO L272 TraceCheckUtils]: 21: Hoare triple {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {7807#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} is VALID [2022-02-20 23:38:07,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {7807#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,665 INFO L290 TraceCheckUtils]: 23: Hoare triple {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,665 INFO L290 TraceCheckUtils]: 24: Hoare triple {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,666 INFO L290 TraceCheckUtils]: 25: Hoare triple {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,667 INFO L290 TraceCheckUtils]: 26: Hoare triple {8059#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8072#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:07,667 INFO L290 TraceCheckUtils]: 27: Hoare triple {8072#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8076#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:07,667 INFO L290 TraceCheckUtils]: 28: Hoare triple {8076#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {8076#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:07,669 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8076#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {7794#(= (select |#valid| ~head~0.base) (_ bv1 1))} #107#return; {8083#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:07,669 INFO L290 TraceCheckUtils]: 30: Hoare triple {8083#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} havoc main_#t~ret9#1; {8083#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:07,670 INFO L272 TraceCheckUtils]: 31: Hoare triple {8083#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {7842#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:07,671 INFO L290 TraceCheckUtils]: 32: Hoare triple {7842#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8093#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:07,672 INFO L290 TraceCheckUtils]: 33: Hoare triple {8093#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,673 INFO L290 TraceCheckUtils]: 34: Hoare triple {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:07,681 WARN L290 TraceCheckUtils]: 35: Hoare triple {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is UNKNOWN [2022-02-20 23:38:07,683 INFO L290 TraceCheckUtils]: 36: Hoare triple {8097#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_1957 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_1957) |#memory_$Pointer$.base|)) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8107#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_3) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))))} is VALID [2022-02-20 23:38:07,683 INFO L290 TraceCheckUtils]: 37: Hoare triple {8107#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_3) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8111#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_3) |#memory_$Pointer$.base|))))} is VALID [2022-02-20 23:38:07,684 INFO L290 TraceCheckUtils]: 38: Hoare triple {8111#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_3) |#memory_$Pointer$.base|))))} assume true; {8111#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_3) |#memory_$Pointer$.base|))))} is VALID [2022-02-20 23:38:07,687 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {8111#(and (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (exists ((v_arrayElimArr_3 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (select v_arrayElimArr_3 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|) (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_3) |#memory_$Pointer$.base|))))} {8083#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} #109#return; {8118#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1)) (= (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32))))) (_ bv0 1)))} is VALID [2022-02-20 23:38:07,688 INFO L290 TraceCheckUtils]: 40: Hoare triple {8118#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (select |#valid| ~head~0.base) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1)) (= (bvadd (_ bv1 1) (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32))))) (_ bv0 1)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,689 INFO L290 TraceCheckUtils]: 41: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,690 INFO L290 TraceCheckUtils]: 42: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,691 INFO L290 TraceCheckUtils]: 43: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,691 INFO L290 TraceCheckUtils]: 44: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,692 INFO L290 TraceCheckUtils]: 45: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,693 INFO L290 TraceCheckUtils]: 46: Hoare triple {8122#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (= (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (_ bv1 1)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8141#(and (exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:38:07,694 INFO L290 TraceCheckUtils]: 47: Hoare triple {8141#(and (exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (select |#valid| |ULTIMATE.start_search_list_~l#1.base|) (_ bv1 1)) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,695 INFO L290 TraceCheckUtils]: 48: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,696 INFO L290 TraceCheckUtils]: 49: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume search_list_#t~short4#1; {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,700 INFO L290 TraceCheckUtils]: 50: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,702 INFO L290 TraceCheckUtils]: 51: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,703 INFO L290 TraceCheckUtils]: 52: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} is VALID [2022-02-20 23:38:07,705 INFO L290 TraceCheckUtils]: 53: Hoare triple {8145#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32))) (and (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (= (_ bv0 1) (bvadd (bvneg (select |#valid| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (_ bv1 1))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32))) (_ bv4 32)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv4 32)))) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8164#(and (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (not (= |ULTIMATE.start_search_list_#t~mem5#1.base| v_arrayElimIndex_2)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)))))} is VALID [2022-02-20 23:38:07,706 INFO L290 TraceCheckUtils]: 54: Hoare triple {8164#(and (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (_ bv1 1)) (_ bv0 1)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (not (= |ULTIMATE.start_search_list_#t~mem5#1.base| v_arrayElimIndex_2)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)))))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:38:07,707 INFO L290 TraceCheckUtils]: 55: Hoare triple {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:38:07,708 INFO L290 TraceCheckUtils]: 56: Hoare triple {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume search_list_#t~short4#1; {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} is VALID [2022-02-20 23:38:07,709 INFO L290 TraceCheckUtils]: 57: Hoare triple {8168#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_28| (_ BitVec 32)) (v_arrayElimIndex_2 (_ BitVec 32))) (and (= (select |#valid| v_arrayElimIndex_2) (_ bv1 1)) (= (select |#valid| |v_ULTIMATE.start_search_list_~l#1.base_28|) (_ bv1 1)) (not (= |v_ULTIMATE.start_search_list_~l#1.base_28| v_arrayElimIndex_2)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_28|)) (not (= |ULTIMATE.start_search_list_~l#1.base| v_arrayElimIndex_2)))) (= (bvadd (bvneg (select |#valid| |ULTIMATE.start_search_list_~l#1.base|)) (_ bv1 1)) (_ bv0 1)))} assume !(1bv1 == #valid[search_list_~l#1.base]); {7738#false} is VALID [2022-02-20 23:38:07,710 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 41 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:38:07,710 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:38:08,083 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:08,084 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 27 [2022-02-20 23:38:08,105 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_~head~0.base_134 (_ BitVec 32)) (v_arrayElimArr_4 (Array (_ BitVec 32) (_ BitVec 32)))) (or (= (_ bv0 1) (bvadd (bvneg (select (store |c_#valid| v_~head~0.base_134 (_ bv1 1)) (select (select (store |c_#memory_$Pointer$.base| v_~head~0.base_134 v_arrayElimArr_4) c_~head~0.base) (bvadd c_~head~0.offset (_ bv4 32))))) (_ bv1 1))) (not (= (select v_arrayElimArr_4 (_ bv4 32)) c_~head~0.base)) (not (= (bvneg (select |c_#valid| v_~head~0.base_134)) (_ bv0 1))))) is different from false [2022-02-20 23:38:08,107 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1029902612] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:38:08,107 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:38:08,107 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 33 [2022-02-20 23:38:08,107 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [191145101] [2022-02-20 23:38:08,107 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:38:08,108 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 58 [2022-02-20 23:38:08,108 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:38:08,109 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:38:08,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 92 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:38:08,302 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-02-20 23:38:08,302 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:38:08,303 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-02-20 23:38:08,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=132, Invalid=1277, Unknown=5, NotChecked=146, Total=1560 [2022-02-20 23:38:08,303 INFO L87 Difference]: Start difference. First operand 82 states and 90 transitions. Second operand has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:38:09,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:09,683 INFO L93 Difference]: Finished difference Result 101 states and 116 transitions. [2022-02-20 23:38:09,683 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:38:09,683 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 58 [2022-02-20 23:38:09,683 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:38:09,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:38:09,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 94 transitions. [2022-02-20 23:38:09,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:38:09,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 94 transitions. [2022-02-20 23:38:09,686 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 94 transitions. [2022-02-20 23:38:09,851 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 93 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:38:09,853 INFO L225 Difference]: With dead ends: 101 [2022-02-20 23:38:09,853 INFO L226 Difference]: Without dead ends: 101 [2022-02-20 23:38:09,853 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 158 GetRequests, 111 SyntacticMatches, 4 SemanticMatches, 43 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 415 ImplicationChecksByTransitivity, 2.0s TimeCoverageRelationStatistics Valid=193, Invalid=1613, Unknown=8, NotChecked=166, Total=1980 [2022-02-20 23:38:09,854 INFO L933 BasicCegarLoop]: 46 mSDtfsCounter, 24 mSDsluCounter, 410 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 456 SdHoareTripleChecker+Invalid, 317 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 197 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:38:09,854 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 456 Invalid, 317 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 108 Invalid, 0 Unknown, 197 Unchecked, 0.2s Time] [2022-02-20 23:38:09,854 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-02-20 23:38:09,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 86. [2022-02-20 23:38:09,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:38:09,856 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:09,857 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:09,857 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:09,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:09,859 INFO L93 Difference]: Finished difference Result 101 states and 116 transitions. [2022-02-20 23:38:09,859 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 116 transitions. [2022-02-20 23:38:09,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:38:09,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:38:09,859 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 101 states. [2022-02-20 23:38:09,859 INFO L87 Difference]: Start difference. First operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 101 states. [2022-02-20 23:38:09,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:38:09,861 INFO L93 Difference]: Finished difference Result 101 states and 116 transitions. [2022-02-20 23:38:09,861 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 116 transitions. [2022-02-20 23:38:09,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:38:09,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:38:09,861 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:38:09,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:38:09,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 68 states have (on average 1.2941176470588236) internal successors, (88), 79 states have internal predecessors, (88), 4 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:38:09,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 96 transitions. [2022-02-20 23:38:09,864 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 96 transitions. Word has length 58 [2022-02-20 23:38:09,864 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:38:09,864 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 96 transitions. [2022-02-20 23:38:09,865 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 34 states, 33 states have (on average 2.515151515151515) internal successors, (83), 30 states have internal predecessors, (83), 4 states have call successors, (5), 3 states have call predecessors, (5), 6 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:38:09,865 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 96 transitions. [2022-02-20 23:38:09,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-02-20 23:38:09,866 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:38:09,866 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:38:09,876 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:38:10,092 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:38:10,284 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:38:10,285 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [insert_listErr0REQUIRES_VIOLATION, insert_listErr1REQUIRES_VIOLATION, insert_listErr2REQUIRES_VIOLATION, insert_listErr3REQUIRES_VIOLATION (and 17 more)] === [2022-02-20 23:38:10,285 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:38:10,285 INFO L85 PathProgramCache]: Analyzing trace with hash -69599987, now seen corresponding path program 2 times [2022-02-20 23:38:10,285 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:38:10,285 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [34488764] [2022-02-20 23:38:10,285 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:38:10,285 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:38:10,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:38:10,287 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:38:10,289 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Waiting until timeout for monitored process [2022-02-20 23:38:10,743 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:38:10,743 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:38:10,762 INFO L263 TraceCheckSpWp]: Trace formula consists of 397 conjuncts, 67 conjunts are in the unsatisfiable core [2022-02-20 23:38:10,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:38:10,787 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:38:10,817 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:38:10,820 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:38:11,069 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:11,076 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:11,216 INFO L356 Elim1Store]: treesize reduction 23, result has 47.7 percent of original size [2022-02-20 23:38:11,216 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 18 treesize of output 30 [2022-02-20 23:38:11,242 INFO L356 Elim1Store]: treesize reduction 33, result has 43.1 percent of original size [2022-02-20 23:38:11,242 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 24 treesize of output 37 [2022-02-20 23:38:11,664 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:11,673 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:11,870 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:11,871 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:38:11,878 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:11,880 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 51 treesize of output 41 [2022-02-20 23:38:11,888 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:11,894 INFO L356 Elim1Store]: treesize reduction 4, result has 77.8 percent of original size [2022-02-20 23:38:11,895 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 38 treesize of output 30 [2022-02-20 23:38:11,905 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 24 [2022-02-20 23:38:12,648 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:38:12,662 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:38:12,663 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 87 treesize of output 47 [2022-02-20 23:38:12,706 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:38:12,706 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 18 [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 0: Hoare triple {8635#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 1: Hoare triple {8635#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L272 TraceCheckUtils]: 2: Hoare triple {8635#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 3: Hoare triple {8635#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 4: Hoare triple {8635#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 5: Hoare triple {8635#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {8635#true} is VALID [2022-02-20 23:38:12,963 INFO L290 TraceCheckUtils]: 6: Hoare triple {8635#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {8635#true} is VALID [2022-02-20 23:38:12,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {8635#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8635#true} is VALID [2022-02-20 23:38:12,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {8635#true} assume true; {8635#true} is VALID [2022-02-20 23:38:12,964 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {8635#true} {8635#true} #103#return; {8635#true} is VALID [2022-02-20 23:38:12,964 INFO L290 TraceCheckUtils]: 10: Hoare triple {8635#true} havoc main_#t~ret7#1; {8635#true} is VALID [2022-02-20 23:38:12,964 INFO L272 TraceCheckUtils]: 11: Hoare triple {8635#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {8635#true} is VALID [2022-02-20 23:38:12,965 INFO L290 TraceCheckUtils]: 12: Hoare triple {8635#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,967 INFO L290 TraceCheckUtils]: 14: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,968 INFO L290 TraceCheckUtils]: 15: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,968 INFO L290 TraceCheckUtils]: 16: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,969 INFO L290 TraceCheckUtils]: 17: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:12,969 INFO L290 TraceCheckUtils]: 18: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:12,970 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {8635#true} #105#return; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:12,970 INFO L290 TraceCheckUtils]: 20: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret8#1; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:12,971 INFO L272 TraceCheckUtils]: 21: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {8705#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} is VALID [2022-02-20 23:38:12,972 INFO L290 TraceCheckUtils]: 22: Hoare triple {8705#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,973 INFO L290 TraceCheckUtils]: 23: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,973 INFO L290 TraceCheckUtils]: 24: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,974 INFO L290 TraceCheckUtils]: 25: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,975 INFO L290 TraceCheckUtils]: 26: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8722#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:12,976 INFO L290 TraceCheckUtils]: 27: Hoare triple {8722#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:12,978 INFO L290 TraceCheckUtils]: 28: Hoare triple {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:12,981 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} #107#return; {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:12,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} havoc main_#t~ret9#1; {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:12,982 INFO L272 TraceCheckUtils]: 31: Hoare triple {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {8740#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:12,983 INFO L290 TraceCheckUtils]: 32: Hoare triple {8740#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8744#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:12,985 INFO L290 TraceCheckUtils]: 33: Hoare triple {8744#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:12,987 INFO L290 TraceCheckUtils]: 34: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:13,056 WARN L290 TraceCheckUtils]: 35: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is UNKNOWN [2022-02-20 23:38:13,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8758#(and (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |old(~head~0.base)| (select v_arrayElimArr_6 (bvadd (_ bv4 32) insert_list_~l.offset))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_6) |#memory_$Pointer$.base|))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|))))} is VALID [2022-02-20 23:38:13,063 INFO L290 TraceCheckUtils]: 37: Hoare triple {8758#(and (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |old(~head~0.base)| (select v_arrayElimArr_6 (bvadd (_ bv4 32) insert_list_~l.offset))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_6) |#memory_$Pointer$.base|))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:38:13,065 INFO L290 TraceCheckUtils]: 38: Hoare triple {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} assume true; {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:38:13,070 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} #109#return; {8769#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)))) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:13,072 INFO L290 TraceCheckUtils]: 40: Hoare triple {8769#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)))) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,073 INFO L290 TraceCheckUtils]: 41: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,074 INFO L290 TraceCheckUtils]: 42: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,075 INFO L290 TraceCheckUtils]: 43: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,076 INFO L290 TraceCheckUtils]: 44: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,077 INFO L290 TraceCheckUtils]: 45: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,079 INFO L290 TraceCheckUtils]: 46: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8792#(exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32))))} is VALID [2022-02-20 23:38:13,080 INFO L290 TraceCheckUtils]: 47: Hoare triple {8792#(exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32))))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,082 INFO L290 TraceCheckUtils]: 48: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,084 INFO L290 TraceCheckUtils]: 49: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} assume search_list_#t~short4#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,087 INFO L290 TraceCheckUtils]: 50: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,088 INFO L290 TraceCheckUtils]: 51: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,089 INFO L290 TraceCheckUtils]: 52: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:13,091 INFO L290 TraceCheckUtils]: 53: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8815#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:38:13,092 INFO L290 TraceCheckUtils]: 54: Hoare triple {8815#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,093 INFO L290 TraceCheckUtils]: 55: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:13,094 INFO L290 TraceCheckUtils]: 57: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, search_list_~l#1.offset), #length[search_list_~l#1.base]) && ~bvule32(search_list_~l#1.offset, ~bvadd32(4bv32, search_list_~l#1.offset))) && ~bvule32(0bv32, search_list_~l#1.offset)); {8636#false} is VALID [2022-02-20 23:38:13,094 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 34 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:38:13,094 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:38:14,151 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:14,151 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 64 treesize of output 68 [2022-02-20 23:38:14,164 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:14,165 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 61 treesize of output 59 [2022-02-20 23:38:14,173 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 6 treesize of output 4 [2022-02-20 23:38:14,307 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 6 treesize of output 4 [2022-02-20 23:38:14,374 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_~head~0.base_142 (_ BitVec 32)) (v_arrayElimArr_7 (Array (_ BitVec 32) (_ BitVec 32))) (v_arrayElimArr_8 (Array (_ BitVec 32) (_ BitVec 32)))) (or (not (= (_ bv0 1) (bvneg (select |c_#valid| v_~head~0.base_142)))) (not (= (select v_arrayElimArr_7 (_ bv4 32)) c_~head~0.base)) (let ((.cse1 (bvadd c_~head~0.offset (_ bv4 32)))) (let ((.cse2 (select (select (store |c_#memory_$Pointer$.offset| v_~head~0.base_142 v_arrayElimArr_8) c_~head~0.base) .cse1))) (let ((.cse0 (bvadd .cse2 (_ bv4 32)))) (and (bvule .cse0 (select (store |c_#length| v_~head~0.base_142 (_ bv8 32)) (select (select (store |c_#memory_$Pointer$.base| v_~head~0.base_142 v_arrayElimArr_7) c_~head~0.base) .cse1))) (bvule .cse2 .cse0))))) (not (= c_~head~0.offset (select v_arrayElimArr_8 (_ bv4 32)))))) is different from false [2022-02-20 23:38:14,377 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:38:14,377 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [34488764] [2022-02-20 23:38:14,377 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [34488764] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:38:14,377 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [286896241] [2022-02-20 23:38:14,378 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:38:14,378 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:38:14,378 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:38:14,379 INFO L229 MonitoredProcess]: Starting monitored process 19 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:38:14,379 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (19)] Waiting until timeout for monitored process [2022-02-20 23:38:14,877 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:38:14,878 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:38:14,885 INFO L263 TraceCheckSpWp]: Trace formula consists of 397 conjuncts, 67 conjunts are in the unsatisfiable core [2022-02-20 23:38:14,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:38:14,912 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:38:14,951 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:38:14,959 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:38:15,175 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:15,182 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:38:15,282 INFO L356 Elim1Store]: treesize reduction 33, result has 43.1 percent of original size [2022-02-20 23:38:15,283 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 24 treesize of output 37 [2022-02-20 23:38:15,298 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 18 treesize of output 20 [2022-02-20 23:38:15,582 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:15,590 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 14 [2022-02-20 23:38:15,737 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:15,738 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 51 treesize of output 41 [2022-02-20 23:38:15,746 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:15,746 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 20 treesize of output 22 [2022-02-20 23:38:15,756 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:38:15,764 INFO L356 Elim1Store]: treesize reduction 4, result has 77.8 percent of original size [2022-02-20 23:38:15,765 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 38 treesize of output 30 [2022-02-20 23:38:15,785 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 24 [2022-02-20 23:38:16,404 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:38:16,418 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:38:16,418 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 87 treesize of output 47 [2022-02-20 23:38:16,463 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:38:16,463 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 4 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 18 [2022-02-20 23:38:16,590 INFO L290 TraceCheckUtils]: 0: Hoare triple {8635#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(16bv32, 2bv32);~head~0.base, ~head~0.offset := 0bv32, 0bv32; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 1: Hoare triple {8635#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret7#1, main_#t~ret8#1, main_#t~ret9#1, main_#t~ret10#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_#t~mem12#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~i~0#1, main_~mylist~0#1.base, main_~mylist~0#1.offset, main_~temp~0#1.base, main_~temp~0#1.offset;havoc main_~i~0#1;havoc main_~mylist~0#1.base, main_~mylist~0#1.offset;havoc main_~temp~0#1.base, main_~temp~0#1.offset; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L272 TraceCheckUtils]: 2: Hoare triple {8635#true} call main_#t~ret7#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 2bv32); {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 3: Hoare triple {8635#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 4: Hoare triple {8635#true} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {8635#true} assume ~head~0.base == 0bv32 && ~head~0.offset == 0bv32; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 6: Hoare triple {8635#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L545 {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {8635#true} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {8635#true} assume true; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {8635#true} {8635#true} #103#return; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L290 TraceCheckUtils]: 10: Hoare triple {8635#true} havoc main_#t~ret7#1; {8635#true} is VALID [2022-02-20 23:38:16,591 INFO L272 TraceCheckUtils]: 11: Hoare triple {8635#true} call main_#t~ret8#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 5bv32); {8635#true} is VALID [2022-02-20 23:38:16,592 INFO L290 TraceCheckUtils]: 12: Hoare triple {8635#true} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,594 INFO L290 TraceCheckUtils]: 16: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,595 INFO L290 TraceCheckUtils]: 17: Hoare triple {8676#(and (= (select |#valid| insert_list_~l.base) (_ bv1 1)) (= (select |#length| insert_list_~l.base) (_ bv8 32)) (= (_ bv0 32) insert_list_~l.offset))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:16,595 INFO L290 TraceCheckUtils]: 18: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} assume true; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:16,596 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} {8635#true} #105#return; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:16,596 INFO L290 TraceCheckUtils]: 20: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret8#1; {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:16,597 INFO L272 TraceCheckUtils]: 21: Hoare triple {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} call main_#t~ret9#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 1bv32); {8705#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} is VALID [2022-02-20 23:38:16,611 INFO L290 TraceCheckUtils]: 22: Hoare triple {8705#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,612 INFO L290 TraceCheckUtils]: 23: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,613 INFO L290 TraceCheckUtils]: 24: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,614 INFO L290 TraceCheckUtils]: 25: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,615 INFO L290 TraceCheckUtils]: 26: Hoare triple {8709#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| ~head~0.offset) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8722#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:16,617 INFO L290 TraceCheckUtils]: 27: Hoare triple {8722#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= |#length| (store |old(#length)| insert_list_~l.base v_ArrVal_2112))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= (select (select |#memory_$Pointer$.offset| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|) (= (store |old(#valid)| insert_list_~l.base (_ bv1 1)) |#valid|) (= (_ bv0 32) insert_list_~l.offset) (= (select (select |#memory_$Pointer$.base| insert_list_~l.base) (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.base)|))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:16,617 INFO L290 TraceCheckUtils]: 28: Hoare triple {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} assume true; {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} is VALID [2022-02-20 23:38:16,620 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {8726#(and (exists ((v_ArrVal_2112 (_ BitVec 32))) (= (store |old(#length)| ~head~0.base v_ArrVal_2112) |#length|)) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (= (store |old(#valid)| ~head~0.base (_ bv1 1)) |#valid|) (= |old(~head~0.offset)| (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (= ~head~0.offset (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))} {8692#(and (= (select |#valid| ~head~0.base) (_ bv1 1)) (= ~head~0.offset (_ bv0 32)) (= (_ bv8 32) (select |#length| ~head~0.base)))} #107#return; {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:16,622 INFO L290 TraceCheckUtils]: 30: Hoare triple {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} havoc main_#t~ret9#1; {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} is VALID [2022-02-20 23:38:16,623 INFO L272 TraceCheckUtils]: 31: Hoare triple {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} call main_#t~ret10#1 := insert_list(main_~mylist~0#1.base, main_~mylist~0#1.offset, 3bv32); {8740#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:16,625 INFO L290 TraceCheckUtils]: 32: Hoare triple {8740#(and (= |old(#valid)| |#valid|) (= |old(~head~0.base)| ~head~0.base) (= |#length| |old(#length)|) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} ~l.base, ~l.offset := #in~l.base, #in~l.offset;~k := #in~k;call #t~malloc6.base, #t~malloc6.offset := #Ultimate.allocOnHeap(8bv32);~l.base, ~l.offset := #t~malloc6.base, #t~malloc6.offset;havoc #t~malloc6.base, #t~malloc6.offset; {8744#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} is VALID [2022-02-20 23:38:16,628 INFO L290 TraceCheckUtils]: 33: Hoare triple {8744#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (= |old(~head~0.offset)| ~head~0.offset) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (= |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L543 {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,629 INFO L290 TraceCheckUtils]: 34: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} assume !(~head~0.base == 0bv32 && ~head~0.offset == 0bv32); {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is VALID [2022-02-20 23:38:16,653 WARN L290 TraceCheckUtils]: 35: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~intINTTYPE4(~k, ~l.base, ~l.offset, 4bv32); srcloc: L547 {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} is UNKNOWN [2022-02-20 23:38:16,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {8748#(and (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |old(~head~0.base)| ~head~0.base) (exists ((v_ArrVal_2119 (Array (_ BitVec 32) (_ BitVec 32)))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_ArrVal_2119) |#memory_$Pointer$.base|)) (exists ((v_ArrVal_2118 (Array (_ BitVec 32) (_ BitVec 32)))) (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_ArrVal_2118))) (= |old(~head~0.offset)| ~head~0.offset) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset))} SUMMARY for call write~$Pointer$(~head~0.base, ~head~0.offset, ~l.base, ~bvadd32(4bv32, ~l.offset), 4bv32); srcloc: L547-1 {8758#(and (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |old(~head~0.base)| (select v_arrayElimArr_6 (bvadd (_ bv4 32) insert_list_~l.offset))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_6) |#memory_$Pointer$.base|))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|))))} is VALID [2022-02-20 23:38:16,662 INFO L290 TraceCheckUtils]: 37: Hoare triple {8758#(and (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |old(~head~0.base)| (select v_arrayElimArr_6 (bvadd (_ bv4 32) insert_list_~l.offset))) (= (store |old(#memory_$Pointer$.base)| insert_list_~l.base v_arrayElimArr_6) |#memory_$Pointer$.base|))) (= (_ bv0 1) (bvneg (select |old(#valid)| insert_list_~l.base))) (= |#length| (store |old(#length)| insert_list_~l.base (_ bv8 32))) (= (_ bv0 32) insert_list_~l.offset) (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| insert_list_~l.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) insert_list_~l.offset)) |old(~head~0.offset)|))))} ~head~0.base, ~head~0.offset := ~l.base, ~l.offset;#res := 0bv32; {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:38:16,663 INFO L290 TraceCheckUtils]: 38: Hoare triple {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} assume true; {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} is VALID [2022-02-20 23:38:16,668 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {8762#(and (exists ((v_arrayElimArr_5 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= |#memory_$Pointer$.offset| (store |old(#memory_$Pointer$.offset)| ~head~0.base v_arrayElimArr_5)) (= (select v_arrayElimArr_5 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.offset)|))) (= (bvneg (select |old(#valid)| ~head~0.base)) (_ bv0 1)) (exists ((v_arrayElimArr_6 (Array (_ BitVec 32) (_ BitVec 32)))) (and (= (store |old(#memory_$Pointer$.base)| ~head~0.base v_arrayElimArr_6) |#memory_$Pointer$.base|) (= (select v_arrayElimArr_6 (bvadd (_ bv4 32) ~head~0.offset)) |old(~head~0.base)|))) (= ~head~0.offset (_ bv0 32)) (= |#length| (store |old(#length)| ~head~0.base (_ bv8 32))))} {8733#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (not (= (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) ~head~0.base)) (= ~head~0.offset (_ bv0 32)) (= (_ bv0 1) (bvadd (bvneg (select |#valid| ~head~0.base)) (_ bv1 1))) (= (_ bv0 1) (bvadd (select |#valid| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv1 1))))} #109#return; {8769#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)))) (= (_ bv8 32) (select |#length| ~head~0.base)))} is VALID [2022-02-20 23:38:16,670 INFO L290 TraceCheckUtils]: 40: Hoare triple {8769#(and (= (select (select |#memory_$Pointer$.offset| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) (_ bv0 32)) (= ~head~0.offset (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)) ~head~0.base)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| ~head~0.base) (bvadd (_ bv4 32) ~head~0.offset))) (_ bv4 32)))) (= (_ bv8 32) (select |#length| ~head~0.base)))} havoc main_#t~ret10#1;assume { :begin_inline_search_list } true;search_list_#in~l#1.base, search_list_#in~l#1.offset, search_list_#in~k#1 := ~head~0.base, ~head~0.offset, 2bv32;havoc search_list_#res#1.base, search_list_#res#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset, search_list_#t~mem3#1, search_list_#t~short4#1, search_list_~l#1.base, search_list_~l#1.offset, search_list_~k#1;search_list_~l#1.base, search_list_~l#1.offset := search_list_#in~l#1.base, search_list_#in~l#1.offset;search_list_~k#1 := search_list_#in~k#1;search_list_~l#1.base, search_list_~l#1.offset := ~head~0.base, ~head~0.offset; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,671 INFO L290 TraceCheckUtils]: 41: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,672 INFO L290 TraceCheckUtils]: 42: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,673 INFO L290 TraceCheckUtils]: 43: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,674 INFO L290 TraceCheckUtils]: 44: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,675 INFO L290 TraceCheckUtils]: 45: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,676 INFO L290 TraceCheckUtils]: 46: Hoare triple {8773#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (bvadd (_ bv4 32) |ULTIMATE.start_search_list_~l#1.offset|))) (_ bv4 32)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8792#(exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32))))} is VALID [2022-02-20 23:38:16,677 INFO L290 TraceCheckUtils]: 47: Hoare triple {8792#(exists ((|ULTIMATE.start_search_list_~l#1.base| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (not (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) |ULTIMATE.start_search_list_#t~mem5#1.base|) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_search_list_~l#1.base|) (_ bv4 32))) (_ bv4 32)))) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32))))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,678 INFO L290 TraceCheckUtils]: 48: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} assume search_list_#t~short4#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,682 INFO L290 TraceCheckUtils]: 50: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} SUMMARY for call search_list_#t~mem3#1 := read~intINTTYPE4(search_list_~l#1.base, search_list_~l#1.offset, 4bv32); srcloc: L536-2 {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,683 INFO L290 TraceCheckUtils]: 51: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} search_list_#t~short4#1 := search_list_#t~mem3#1 != search_list_~k#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,684 INFO L290 TraceCheckUtils]: 52: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} assume !!search_list_#t~short4#1;havoc search_list_#t~mem3#1;havoc search_list_#t~short4#1; {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} is VALID [2022-02-20 23:38:16,686 INFO L290 TraceCheckUtils]: 53: Hoare triple {8796#(exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= (select (select |#memory_$Pointer$.offset| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)) (_ bv0 32)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) |ULTIMATE.start_search_list_~l#1.offset|) (= (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (_ bv0 32)) (not (= (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32)) (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32)))) (= |ULTIMATE.start_search_list_~l#1.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| (select (select |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_search_list_~l#1.base_32|) (_ bv4 32))) (_ bv4 32))))))} SUMMARY for call search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset := read~$Pointer$(search_list_~l#1.base, ~bvadd32(4bv32, search_list_~l#1.offset), 4bv32); srcloc: L537 {8815#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:38:16,687 INFO L290 TraceCheckUtils]: 54: Hoare triple {8815#(and (= (select |#length| |ULTIMATE.start_search_list_#t~mem5#1.base|) (_ bv8 32)) (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_search_list_~l#1.base_32| |ULTIMATE.start_search_list_#t~mem5#1.base|)) (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= |ULTIMATE.start_search_list_#t~mem5#1.offset| (_ bv0 32)))} search_list_~l#1.base, search_list_~l#1.offset := search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset;havoc search_list_#t~mem5#1.base, search_list_#t~mem5#1.offset; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,687 INFO L290 TraceCheckUtils]: 55: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} search_list_#t~short4#1 := search_list_~l#1.base != 0bv32 || search_list_~l#1.offset != 0bv32; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,688 INFO L290 TraceCheckUtils]: 56: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume search_list_#t~short4#1; {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} is VALID [2022-02-20 23:38:16,688 INFO L290 TraceCheckUtils]: 57: Hoare triple {8819#(and (exists ((|v_ULTIMATE.start_search_list_~l#1.base_32| (_ BitVec 32))) (and (= (_ bv8 32) (select |#length| |v_ULTIMATE.start_search_list_~l#1.base_32|)) (not (= |ULTIMATE.start_search_list_~l#1.base| |v_ULTIMATE.start_search_list_~l#1.base_32|)))) (= (_ bv0 32) |ULTIMATE.start_search_list_~l#1.offset|) (= (select |#length| |ULTIMATE.start_search_list_~l#1.base|) (_ bv8 32)))} assume !((~bvule32(~bvadd32(4bv32, search_list_~l#1.offset), #length[search_list_~l#1.base]) && ~bvule32(search_list_~l#1.offset, ~bvadd32(4bv32, search_list_~l#1.offset))) && ~bvule32(0bv32, search_list_~l#1.offset)); {8636#false} is VALID [2022-02-20 23:38:16,689 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 34 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:38:16,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:38:17,194 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:17,195 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 64 treesize of output 68 [2022-02-20 23:38:17,206 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:38:17,206 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 1 new quantified variables, introduced 1 case distinctions, treesize of input 61 treesize of output 59 [2022-02-20 23:38:17,220 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 6 treesize of output 4 [2022-02-20 23:38:17,420 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 6 treesize of output 4 [2022-02-20 23:38:17,456 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_~head~0.base_150 (_ BitVec 32)) (v_arrayElimArr_11 (Array (_ BitVec 32) (_ BitVec 32))) (v_arrayElimArr_12 (Array (_ BitVec 32) (_ BitVec 32)))) (or (not (= (_ bv0 1) (bvneg (select |c_#valid| v_~head~0.base_150)))) (not (= c_~head~0.offset (select v_arrayElimArr_12 (_ bv4 32)))) (not (= (select v_arrayElimArr_11 (_ bv4 32)) c_~head~0.base)) (let ((.cse2 (bvadd c_~head~0.offset (_ bv4 32)))) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.offset| v_~head~0.base_150 v_arrayElimArr_12) c_~head~0.base) .cse2))) (let ((.cse1 (bvadd (_ bv4 32) .cse0))) (and (bvule .cse0 .cse1) (bvule .cse1 (select (store |c_#length| v_~head~0.base_150 (_ bv8 32)) (select (select (store |c_#memory_$Pointer$.base| v_~head~0.base_150 v_arrayElimArr_11) c_~head~0.base) .cse2))))))))) is different from false [2022-02-20 23:38:17,462 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [286896241] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:38:17,462 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:38:17,462 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 19 [2022-02-20 23:38:17,462 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1492804652] [2022-02-20 23:38:17,462 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:38:17,463 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 2.6315789473684212) internal successors, (50), 17 states have internal predecessors, (50), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 58 [2022-02-20 23:38:17,463 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:38:17,463 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 2.6315789473684212) internal successors, (50), 17 states have internal predecessors, (50), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:38:17,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 57 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:38:17,624 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:38:17,624 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:38:17,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:38:17,624 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=591, Unknown=5, NotChecked=98, Total=756 [2022-02-20 23:38:17,625 INFO L87 Difference]: Start difference. First operand 86 states and 96 transitions. Second operand has 20 states, 19 states have (on average 2.6315789473684212) internal successors, (50), 17 states have internal predecessors, (50), 3 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4)