./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/ldv-memsafety/memleaks_test18.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/ldv-memsafety/memleaks_test18.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 98678a21a2b37b871d00192aacebe14c4ee9cc87b75400dd7a4adc0ccfa93151 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:51:11,826 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:51:11,827 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:51:11,876 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:51:11,877 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:51:11,878 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:51:11,879 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:51:11,880 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:51:11,881 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:51:11,881 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:51:11,882 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:51:11,883 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:51:11,883 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:51:11,883 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:51:11,884 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:51:11,885 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:51:11,886 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:51:11,887 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:51:11,888 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:51:11,889 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:51:11,890 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:51:11,891 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:51:11,895 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:51:11,895 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:51:11,897 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:51:11,899 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:51:11,899 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:51:11,900 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:51:11,901 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:51:11,901 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:51:11,902 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:51:11,903 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:51:11,903 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:51:11,904 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:51:11,905 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:51:11,905 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:51:11,906 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:51:11,907 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:51:11,907 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:51:11,907 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:51:11,908 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:51:11,909 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2022-02-20 23:51:11,929 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:51:11,930 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:51:11,930 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:51:11,930 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:51:11,931 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:51:11,931 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:51:11,932 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:51:11,932 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:51:11,932 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:51:11,932 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:51:11,932 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:51:11,933 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:51:11,933 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:51:11,933 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:51:11,933 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:51:11,933 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:51:11,934 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:51:11,935 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:51:11,935 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:51:11,935 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:51:11,935 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:11,936 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:51:11,936 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:51:11,936 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:51:11,936 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:51:11,936 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 98678a21a2b37b871d00192aacebe14c4ee9cc87b75400dd7a4adc0ccfa93151 [2022-02-20 23:51:12,159 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:51:12,181 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:51:12,183 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:51:12,184 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:51:12,186 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:51:12,187 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-memsafety/memleaks_test18.i [2022-02-20 23:51:12,228 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f525e1b2/6652867f3231486495b08ec11a4c3d52/FLAG7129ff542 [2022-02-20 23:51:12,666 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:51:12,667 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-memsafety/memleaks_test18.i [2022-02-20 23:51:12,677 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f525e1b2/6652867f3231486495b08ec11a4c3d52/FLAG7129ff542 [2022-02-20 23:51:12,686 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3f525e1b2/6652867f3231486495b08ec11a4c3d52 [2022-02-20 23:51:12,689 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:51:12,690 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:51:12,692 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:12,692 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:51:12,695 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:51:12,699 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:12" (1/1) ... [2022-02-20 23:51:12,700 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47a80622 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:12, skipping insertion in model container [2022-02-20 23:51:12,700 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:12" (1/1) ... [2022-02-20 23:51:12,704 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:51:12,726 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:13,052 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:13,067 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:51:13,068 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@674cf1fb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:13, skipping insertion in model container [2022-02-20 23:51:13,068 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:13,068 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:51:13,070 INFO L158 Benchmark]: Toolchain (without parser) took 379.44ms. Allocated memory was 83.9MB in the beginning and 111.1MB in the end (delta: 27.3MB). Free memory was 49.2MB in the beginning and 81.2MB in the end (delta: -32.0MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2022-02-20 23:51:13,071 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 83.9MB. Free memory was 63.4MB in the beginning and 63.4MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:51:13,072 INFO L158 Benchmark]: CACSL2BoogieTranslator took 376.18ms. Allocated memory was 83.9MB in the beginning and 111.1MB in the end (delta: 27.3MB). Free memory was 49.0MB in the beginning and 81.2MB in the end (delta: -32.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:51:13,074 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16ms. Allocated memory is still 83.9MB. Free memory was 63.4MB in the beginning and 63.4MB in the end (delta: 27.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 376.18ms. Allocated memory was 83.9MB in the beginning and 111.1MB in the end (delta: 27.3MB). Free memory was 49.0MB in the beginning and 81.2MB in the end (delta: -32.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 576]: 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/ldv-memsafety/memleaks_test18.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 98678a21a2b37b871d00192aacebe14c4ee9cc87b75400dd7a4adc0ccfa93151 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:51:14,533 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:51:14,535 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:51:14,566 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:51:14,567 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:51:14,569 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:51:14,570 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:51:14,574 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:51:14,576 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:51:14,579 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:51:14,580 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:51:14,583 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:51:14,583 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:51:14,585 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:51:14,586 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:51:14,589 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:51:14,589 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:51:14,590 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:51:14,591 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:51:14,596 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:51:14,597 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:51:14,598 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:51:14,599 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:51:14,600 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:51:14,605 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:51:14,605 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:51:14,605 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:51:14,606 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:51:14,607 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:51:14,607 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:51:14,608 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:51:14,608 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:51:14,609 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:51:14,610 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:51:14,611 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:51:14,611 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:51:14,611 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:51:14,612 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:51:14,612 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:51:14,613 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:51:14,613 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:51:14,616 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf [2022-02-20 23:51:14,645 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:51:14,645 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:51:14,646 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:51:14,646 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:51:14,647 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:51:14,647 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:51:14,648 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:51:14,649 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:51:14,649 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:51:14,649 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:51:14,650 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:51:14,651 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:51:14,652 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:51:14,661 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:51:14,661 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:51:14,661 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:51:14,661 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:51:14,662 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:14,662 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:51:14,662 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:51:14,662 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:51:14,662 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:14,662 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:51:14,663 INFO L138 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 98678a21a2b37b871d00192aacebe14c4ee9cc87b75400dd7a4adc0ccfa93151 [2022-02-20 23:51:14,890 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:51:14,903 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:51:14,905 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:51:14,906 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:51:14,908 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:51:14,909 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-memsafety/memleaks_test18.i [2022-02-20 23:51:14,969 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/76da5ae14/f0982b5a738e415495639e1315f09962/FLAGe0a080720 [2022-02-20 23:51:15,392 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:51:15,393 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-memsafety/memleaks_test18.i [2022-02-20 23:51:15,404 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/76da5ae14/f0982b5a738e415495639e1315f09962/FLAGe0a080720 [2022-02-20 23:51:15,416 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/76da5ae14/f0982b5a738e415495639e1315f09962 [2022-02-20 23:51:15,418 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:51:15,419 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:51:15,421 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:15,422 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:51:15,424 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:51:15,425 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:15" (1/1) ... [2022-02-20 23:51:15,425 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5618e096 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:15, skipping insertion in model container [2022-02-20 23:51:15,426 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:15" (1/1) ... [2022-02-20 23:51:15,430 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:51:15,473 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:15,829 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:15,849 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:51:15,857 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:15,903 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:15,919 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:51:15,974 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:16,000 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:51:16,001 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16 WrapperNode [2022-02-20 23:51:16,001 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:16,002 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:51:16,002 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:51:16,002 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:51:16,007 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:51:16" (1/1) ... [2022-02-20 23:51:16,029 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:51:16" (1/1) ... [2022-02-20 23:51:16,045 INFO L137 Inliner]: procedures = 165, calls = 73, calls flagged for inlining = 21, calls inlined = 3, statements flattened = 52 [2022-02-20 23:51:16,045 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:51:16,046 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:51:16,046 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:51:16,046 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:51:16,051 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,051 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,053 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,054 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,059 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,069 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,070 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,072 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:51:16,073 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:51:16,074 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:51:16,074 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:51:16,074 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:16,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:51:16,097 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:51:16,102 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:51:16,129 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2022-02-20 23:51:16,129 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2022-02-20 23:51:16,129 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:51:16,129 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:51:16,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:51:16,130 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:51:16,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:51:16,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:51:16,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:51:16,130 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:51:16,226 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:51:16,227 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:51:16,455 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:51:16,460 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:51:16,460 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:51:16,461 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:51:16 BoogieIcfgContainer [2022-02-20 23:51:16,461 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:51:16,462 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:51:16,462 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:51:16,464 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:51:16,464 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:51:15" (1/3) ... [2022-02-20 23:51:16,464 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@276d18c1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:51:16, skipping insertion in model container [2022-02-20 23:51:16,465 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16" (2/3) ... [2022-02-20 23:51:16,465 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@276d18c1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:51:16, skipping insertion in model container [2022-02-20 23:51:16,465 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:51:16" (3/3) ... [2022-02-20 23:51:16,466 INFO L111 eAbstractionObserver]: Analyzing ICFG memleaks_test18.i [2022-02-20 23:51:16,469 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:51:16,469 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 11 error locations. [2022-02-20 23:51:16,495 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:51:16,500 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:51:16,500 INFO L340 AbstractCegarLoop]: Starting to check reachability of 11 error locations. [2022-02-20 23:51:16,515 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.72) internal successors, (43), 36 states have internal predecessors, (43), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:16,519 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:51:16,519 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:16,520 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:16,520 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr10ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:16,523 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:16,525 INFO L85 PathProgramCache]: Analyzing trace with hash 1121278797, now seen corresponding path program 1 times [2022-02-20 23:51:16,534 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:16,534 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [477432769] [2022-02-20 23:51:16,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:16,535 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:16,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:16,538 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:51:16,539 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:51:16,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:16,631 INFO L263 TraceCheckSpWp]: Trace formula consists of 41 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:16,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:16,650 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:16,747 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {43#true} is VALID [2022-02-20 23:51:16,747 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {43#true} is VALID [2022-02-20 23:51:16,747 INFO L272 TraceCheckUtils]: 2: Hoare triple {43#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {43#true} is VALID [2022-02-20 23:51:16,748 INFO L290 TraceCheckUtils]: 3: Hoare triple {43#true} ~size := #in~size; {43#true} is VALID [2022-02-20 23:51:16,748 INFO L290 TraceCheckUtils]: 4: Hoare triple {43#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {60#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:16,749 INFO L290 TraceCheckUtils]: 5: Hoare triple {60#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {60#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:16,751 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {60#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} {43#true} #76#return; {67#(not (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:16,751 INFO L290 TraceCheckUtils]: 7: Hoare triple {67#(not (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {71#(not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:16,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {71#(not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32)))} assume !(entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32); {44#false} is VALID [2022-02-20 23:51:16,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume { :end_inline_entry_point } true; {44#false} is VALID [2022-02-20 23:51:16,753 INFO L290 TraceCheckUtils]: 10: Hoare triple {44#false} assume !(#valid == main_old_#valid#1); {44#false} is VALID [2022-02-20 23:51:16,753 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:51:16,754 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:16,754 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:16,755 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [477432769] [2022-02-20 23:51:16,755 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [477432769] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:16,755 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:16,756 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:16,757 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [418964159] [2022-02-20 23:51:16,757 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:16,762 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-02-20 23:51:16,763 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:16,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:16,779 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:16,780 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:16,780 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:16,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:16,802 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:16,804 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.72) internal successors, (43), 36 states have internal predecessors, (43), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:17,212 INFO L93 Difference]: Finished difference Result 74 states and 85 transitions. [2022-02-20 23:51:17,212 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:51:17,212 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-02-20 23:51:17,213 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:17,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 90 transitions. [2022-02-20 23:51:17,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 90 transitions. [2022-02-20 23:51:17,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 90 transitions. [2022-02-20 23:51:17,334 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:17,342 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:51:17,342 INFO L226 Difference]: Without dead ends: 70 [2022-02-20 23:51:17,346 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:17,353 INFO L933 BasicCegarLoop]: 45 mSDtfsCounter, 33 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:17,355 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 163 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:51:17,366 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-02-20 23:51:17,375 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 42. [2022-02-20 23:51:17,375 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:17,376 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:51:17,377 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:51:17,377 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:51:17,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:17,382 INFO L93 Difference]: Finished difference Result 70 states and 81 transitions. [2022-02-20 23:51:17,382 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 81 transitions. [2022-02-20 23:51:17,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:17,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:17,384 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Second operand 70 states. [2022-02-20 23:51:17,384 INFO L87 Difference]: Start difference. First operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Second operand 70 states. [2022-02-20 23:51:17,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:17,389 INFO L93 Difference]: Finished difference Result 70 states and 81 transitions. [2022-02-20 23:51:17,389 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 81 transitions. [2022-02-20 23:51:17,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:17,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:17,390 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:17,390 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:17,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 37 states have internal predecessors, (42), 2 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 23:51:17,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 48 transitions. [2022-02-20 23:51:17,395 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 48 transitions. Word has length 11 [2022-02-20 23:51:17,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:17,396 INFO L470 AbstractCegarLoop]: Abstraction has 42 states and 48 transitions. [2022-02-20 23:51:17,397 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 1.8) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,397 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 48 transitions. [2022-02-20 23:51:17,398 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:51:17,398 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:17,399 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:17,405 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Ended with exit code 0 [2022-02-20 23:51:17,599 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:51:17,599 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr10ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:17,600 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:17,600 INFO L85 PathProgramCache]: Analyzing trace with hash 2008782478, now seen corresponding path program 1 times [2022-02-20 23:51:17,600 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:17,600 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1877360393] [2022-02-20 23:51:17,601 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:17,601 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:17,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:17,605 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:51:17,616 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:51:17,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:17,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 35 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:17,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:17,652 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:17,693 INFO L290 TraceCheckUtils]: 0: Hoare triple {336#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {336#true} is VALID [2022-02-20 23:51:17,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {336#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:17,695 INFO L272 TraceCheckUtils]: 2: Hoare triple {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {348#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:17,695 INFO L290 TraceCheckUtils]: 3: Hoare triple {348#(= |old(#valid)| |#valid|)} ~size := #in~size; {348#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:17,696 INFO L290 TraceCheckUtils]: 4: Hoare triple {348#(= |old(#valid)| |#valid|)} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {348#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:17,696 INFO L290 TraceCheckUtils]: 5: Hoare triple {348#(= |old(#valid)| |#valid|)} assume true; {348#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:17,697 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {348#(= |old(#valid)| |#valid|)} {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} #76#return; {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:17,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:17,698 INFO L290 TraceCheckUtils]: 8: Hoare triple {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume !(entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32); {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:17,698 INFO L290 TraceCheckUtils]: 9: Hoare triple {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume { :end_inline_entry_point } true; {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:17,699 INFO L290 TraceCheckUtils]: 10: Hoare triple {344#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume !(#valid == main_old_#valid#1); {337#false} is VALID [2022-02-20 23:51:17,699 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:51:17,699 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:17,699 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:17,699 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1877360393] [2022-02-20 23:51:17,699 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1877360393] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:17,700 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:17,700 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:51:17,700 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1977203809] [2022-02-20 23:51:17,700 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:17,701 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-02-20 23:51:17,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:17,701 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:17,710 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:17,710 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:17,711 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:17,711 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:17,711 INFO L87 Difference]: Start difference. First operand 42 states and 48 transitions. Second operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:17,996 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-02-20 23:51:17,996 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:17,996 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-02-20 23:51:17,996 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:17,996 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:17,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 80 transitions. [2022-02-20 23:51:17,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 80 transitions. [2022-02-20 23:51:18,000 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 80 transitions. [2022-02-20 23:51:18,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:18,086 INFO L225 Difference]: With dead ends: 69 [2022-02-20 23:51:18,086 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:51:18,086 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:18,087 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 26 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:18,088 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 145 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:51:18,088 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:51:18,091 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 38. [2022-02-20 23:51:18,091 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:18,092 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,092 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,092 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,095 INFO L93 Difference]: Finished difference Result 67 states and 77 transitions. [2022-02-20 23:51:18,096 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 77 transitions. [2022-02-20 23:51:18,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,097 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 67 states. [2022-02-20 23:51:18,097 INFO L87 Difference]: Start difference. First operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 67 states. [2022-02-20 23:51:18,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,100 INFO L93 Difference]: Finished difference Result 67 states and 77 transitions. [2022-02-20 23:51:18,100 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 77 transitions. [2022-02-20 23:51:18,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:18,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:18,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 24 states have (on average 1.5833333333333333) internal successors, (38), 34 states have internal predecessors, (38), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2022-02-20 23:51:18,103 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 42 transitions. Word has length 11 [2022-02-20 23:51:18,103 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:18,103 INFO L470 AbstractCegarLoop]: Abstraction has 38 states and 42 transitions. [2022-02-20 23:51:18,104 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,104 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-02-20 23:51:18,104 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:51:18,104 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:18,105 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:18,116 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:51:18,313 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:51:18,314 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:18,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:18,314 INFO L85 PathProgramCache]: Analyzing trace with hash -539289096, now seen corresponding path program 1 times [2022-02-20 23:51:18,314 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:18,314 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1870871418] [2022-02-20 23:51:18,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:18,315 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:18,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:18,316 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:51:18,316 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:51:18,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:51:18,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,355 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:18,431 INFO L290 TraceCheckUtils]: 0: Hoare triple {613#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {613#true} is VALID [2022-02-20 23:51:18,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {613#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:18,432 INFO L272 TraceCheckUtils]: 2: Hoare triple {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {613#true} is VALID [2022-02-20 23:51:18,432 INFO L290 TraceCheckUtils]: 3: Hoare triple {613#true} ~size := #in~size; {613#true} is VALID [2022-02-20 23:51:18,432 INFO L290 TraceCheckUtils]: 4: Hoare triple {613#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {613#true} is VALID [2022-02-20 23:51:18,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {613#true} assume true; {613#true} is VALID [2022-02-20 23:51:18,433 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {613#true} {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:18,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:18,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {621#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {643#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:18,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {643#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} assume !~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {614#false} is VALID [2022-02-20 23:51:18,435 INFO L290 TraceCheckUtils]: 10: Hoare triple {614#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {614#false} is VALID [2022-02-20 23:51:18,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {614#false} assume !~bvsge32(entry_point_~j~0#1, 0bv32); {614#false} is VALID [2022-02-20 23:51:18,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {614#false} assume !(0bv32 == entry_point_~array~0#1.offset); {614#false} is VALID [2022-02-20 23:51:18,437 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:18,437 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:18,438 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:18,438 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1870871418] [2022-02-20 23:51:18,438 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1870871418] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:18,438 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:18,438 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:51:18,438 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [840086524] [2022-02-20 23:51:18,438 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:18,442 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:51:18,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:18,443 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:18,453 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:18,453 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:18,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:18,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:18,454 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,583 INFO L93 Difference]: Finished difference Result 67 states and 73 transitions. [2022-02-20 23:51:18,583 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:18,583 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 13 [2022-02-20 23:51:18,583 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:18,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 74 transitions. [2022-02-20 23:51:18,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 74 transitions. [2022-02-20 23:51:18,592 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 74 transitions. [2022-02-20 23:51:18,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:18,669 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:51:18,669 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:51:18,669 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:18,670 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 87 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 69 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:18,671 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 69 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:18,671 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:51:18,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 39. [2022-02-20 23:51:18,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:18,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,674 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,674 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,676 INFO L93 Difference]: Finished difference Result 67 states and 73 transitions. [2022-02-20 23:51:18,676 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 73 transitions. [2022-02-20 23:51:18,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,677 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 67 states. [2022-02-20 23:51:18,677 INFO L87 Difference]: Start difference. First operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 67 states. [2022-02-20 23:51:18,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,679 INFO L93 Difference]: Finished difference Result 67 states and 73 transitions. [2022-02-20 23:51:18,679 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 73 transitions. [2022-02-20 23:51:18,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:18,680 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:18,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 25 states have (on average 1.56) internal successors, (39), 35 states have internal predecessors, (39), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:18,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 43 transitions. [2022-02-20 23:51:18,681 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 43 transitions. Word has length 13 [2022-02-20 23:51:18,681 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:18,681 INFO L470 AbstractCegarLoop]: Abstraction has 39 states and 43 transitions. [2022-02-20 23:51:18,681 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:51:18,681 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 43 transitions. [2022-02-20 23:51:18,682 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:18,682 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:18,682 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:18,694 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Ended with exit code 0 [2022-02-20 23:51:18,891 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:51:18,891 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:18,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:18,892 INFO L85 PathProgramCache]: Analyzing trace with hash 1099978464, now seen corresponding path program 1 times [2022-02-20 23:51:18,892 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:18,892 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1396975293] [2022-02-20 23:51:18,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:18,892 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:18,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:18,893 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:51:18,895 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:51:18,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,936 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:51:18,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,945 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:18,982 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:51:19,149 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:51:19,149 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:51:19,173 INFO L290 TraceCheckUtils]: 0: Hoare triple {895#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {895#true} is VALID [2022-02-20 23:51:19,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {895#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {895#true} is VALID [2022-02-20 23:51:19,174 INFO L272 TraceCheckUtils]: 2: Hoare triple {895#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {895#true} is VALID [2022-02-20 23:51:19,174 INFO L290 TraceCheckUtils]: 3: Hoare triple {895#true} ~size := #in~size; {895#true} is VALID [2022-02-20 23:51:19,175 INFO L290 TraceCheckUtils]: 4: Hoare triple {895#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:19,176 INFO L290 TraceCheckUtils]: 5: Hoare triple {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} assume true; {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:19,177 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} {895#true} #76#return; {919#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} is VALID [2022-02-20 23:51:19,177 INFO L290 TraceCheckUtils]: 7: Hoare triple {919#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,177 INFO L290 TraceCheckUtils]: 8: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,179 INFO L272 TraceCheckUtils]: 10: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {933#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:19,179 INFO L290 TraceCheckUtils]: 11: Hoare triple {933#(= |old(#valid)| |#valid|)} ~size := #in~size; {933#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:19,180 INFO L290 TraceCheckUtils]: 12: Hoare triple {933#(= |old(#valid)| |#valid|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {940#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_10 (_ BitVec 1))) (= |#valid| (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_10))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:19,181 INFO L290 TraceCheckUtils]: 13: Hoare triple {940#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_10 (_ BitVec 1))) (= |#valid| (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_10))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {940#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_10 (_ BitVec 1))) (= |#valid| (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_10))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:19,182 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {940#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_10 (_ BitVec 1))) (= |#valid| (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_10))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} #78#return; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,185 INFO L290 TraceCheckUtils]: 15: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,186 INFO L290 TraceCheckUtils]: 16: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,187 INFO L290 TraceCheckUtils]: 17: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {896#false} is VALID [2022-02-20 23:51:19,187 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:19,187 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:19,445 INFO L290 TraceCheckUtils]: 17: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {896#false} is VALID [2022-02-20 23:51:19,445 INFO L290 TraceCheckUtils]: 16: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,447 INFO L290 TraceCheckUtils]: 15: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,448 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} #78#return; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} assume true; {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} is VALID [2022-02-20 23:51:19,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} is VALID [2022-02-20 23:51:19,450 INFO L290 TraceCheckUtils]: 11: Hoare triple {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} ~size := #in~size; {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} is VALID [2022-02-20 23:51:19,451 INFO L272 TraceCheckUtils]: 10: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {968#(forall ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2| (_ BitVec 32))) (or (not (= (_ bv1 1) (select |old(#valid)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|))) (= (select |#valid| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_2|) (_ bv1 1))))} is VALID [2022-02-20 23:51:19,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {919#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {923#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:19,453 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} {895#true} #76#return; {919#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} is VALID [2022-02-20 23:51:19,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} assume true; {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:19,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {895#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {912#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:19,455 INFO L290 TraceCheckUtils]: 3: Hoare triple {895#true} ~size := #in~size; {895#true} is VALID [2022-02-20 23:51:19,455 INFO L272 TraceCheckUtils]: 2: Hoare triple {895#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {895#true} is VALID [2022-02-20 23:51:19,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {895#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {895#true} is VALID [2022-02-20 23:51:19,456 INFO L290 TraceCheckUtils]: 0: Hoare triple {895#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {895#true} is VALID [2022-02-20 23:51:19,456 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:19,456 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:19,456 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1396975293] [2022-02-20 23:51:19,456 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1396975293] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:51:19,456 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:19,457 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5] total 7 [2022-02-20 23:51:19,457 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1286299937] [2022-02-20 23:51:19,457 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:19,457 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 18 [2022-02-20 23:51:19,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:19,458 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:51:19,477 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:19,478 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:51:19,478 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:19,478 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:51:19,478 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:51:19,479 INFO L87 Difference]: Start difference. First operand 39 states and 43 transitions. Second operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:51:19,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,786 INFO L93 Difference]: Finished difference Result 64 states and 72 transitions. [2022-02-20 23:51:19,786 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:51:19,786 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 18 [2022-02-20 23:51:19,787 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:19,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:51:19,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 74 transitions. [2022-02-20 23:51:19,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:51:19,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 74 transitions. [2022-02-20 23:51:19,790 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 74 transitions. [2022-02-20 23:51:19,848 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:19,849 INFO L225 Difference]: With dead ends: 64 [2022-02-20 23:51:19,849 INFO L226 Difference]: Without dead ends: 64 [2022-02-20 23:51:19,849 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 25 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:51:19,850 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 22 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 110 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 28 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:19,850 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 132 Invalid, 110 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 78 Invalid, 0 Unknown, 28 Unchecked, 0.1s Time] [2022-02-20 23:51:19,850 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-02-20 23:51:19,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 58. [2022-02-20 23:51:19,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:19,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:19,853 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:19,853 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:19,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,855 INFO L93 Difference]: Finished difference Result 64 states and 72 transitions. [2022-02-20 23:51:19,855 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 72 transitions. [2022-02-20 23:51:19,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,856 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Second operand 64 states. [2022-02-20 23:51:19,856 INFO L87 Difference]: Start difference. First operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Second operand 64 states. [2022-02-20 23:51:19,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,857 INFO L93 Difference]: Finished difference Result 64 states and 72 transitions. [2022-02-20 23:51:19,858 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 72 transitions. [2022-02-20 23:51:19,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,858 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:19,858 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:19,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 41 states have (on average 1.5121951219512195) internal successors, (62), 51 states have internal predecessors, (62), 3 states have call successors, (3), 2 states have call predecessors, (3), 3 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:19,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 70 transitions. [2022-02-20 23:51:19,859 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 70 transitions. Word has length 18 [2022-02-20 23:51:19,860 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:19,860 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 70 transitions. [2022-02-20 23:51:19,860 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 7 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 23:51:19,860 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 70 transitions. [2022-02-20 23:51:19,860 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:19,860 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:19,860 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:19,872 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:51:20,061 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:51:20,061 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:20,061 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:20,061 INFO L85 PathProgramCache]: Analyzing trace with hash 1099978465, now seen corresponding path program 1 times [2022-02-20 23:51:20,061 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:20,062 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [515659551] [2022-02-20 23:51:20,062 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:20,062 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:20,062 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:20,063 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:51:20,064 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:51:20,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:20,116 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:51:20,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:20,131 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:20,157 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:51:20,162 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:51:22,469 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:22,470 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:22,477 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:22,477 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:22,564 INFO L290 TraceCheckUtils]: 0: Hoare triple {1259#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {1259#true} is VALID [2022-02-20 23:51:22,564 INFO L290 TraceCheckUtils]: 1: Hoare triple {1259#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:22,564 INFO L272 TraceCheckUtils]: 2: Hoare triple {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {1259#true} is VALID [2022-02-20 23:51:22,565 INFO L290 TraceCheckUtils]: 3: Hoare triple {1259#true} ~size := #in~size; {1274#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:22,566 INFO L290 TraceCheckUtils]: 4: Hoare triple {1274#(= ldv_malloc_~size |ldv_malloc_#in~size|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:22,566 INFO L290 TraceCheckUtils]: 5: Hoare triple {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} assume true; {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:22,567 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {1285#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} is VALID [2022-02-20 23:51:22,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {1285#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {1289#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {1289#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,572 INFO L290 TraceCheckUtils]: 9: Hoare triple {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,572 INFO L272 TraceCheckUtils]: 10: Hoare triple {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:22,573 INFO L290 TraceCheckUtils]: 11: Hoare triple {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:22,574 INFO L290 TraceCheckUtils]: 12: Hoare triple {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:22,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:22,576 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,577 INFO L290 TraceCheckUtils]: 15: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,577 INFO L290 TraceCheckUtils]: 16: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:22,578 INFO L290 TraceCheckUtils]: 17: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)))); {1260#false} is VALID [2022-02-20 23:51:22,578 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:22,578 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:22,982 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:22,982 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [515659551] [2022-02-20 23:51:22,982 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [515659551] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:22,982 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1775177419] [2022-02-20 23:51:22,982 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:22,983 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:22,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:51:22,984 INFO L229 MonitoredProcess]: Starting monitored process 7 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:51:23,005 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (7)] Waiting until timeout for monitored process [2022-02-20 23:51:23,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:23,052 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:51:23,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:23,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:23,088 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:51:23,093 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:51:23,260 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:23,261 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:23,270 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:23,270 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:23,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {1259#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {1259#true} is VALID [2022-02-20 23:51:23,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {1259#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:23,306 INFO L272 TraceCheckUtils]: 2: Hoare triple {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {1259#true} is VALID [2022-02-20 23:51:23,306 INFO L290 TraceCheckUtils]: 3: Hoare triple {1259#true} ~size := #in~size; {1274#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:23,307 INFO L290 TraceCheckUtils]: 4: Hoare triple {1274#(= ldv_malloc_~size |ldv_malloc_#in~size|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:23,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} assume true; {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:23,309 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1278#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} {1267#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {1285#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} is VALID [2022-02-20 23:51:23,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {1285#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {1289#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {1289#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,311 INFO L272 TraceCheckUtils]: 10: Hoare triple {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:23,311 INFO L290 TraceCheckUtils]: 11: Hoare triple {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:23,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {1300#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:23,313 INFO L290 TraceCheckUtils]: 13: Hoare triple {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:23,315 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1307#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_21 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_21))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {1293#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,316 INFO L290 TraceCheckUtils]: 15: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,316 INFO L290 TraceCheckUtils]: 16: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:23,317 INFO L290 TraceCheckUtils]: 17: Hoare triple {1314#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)))); {1260#false} is VALID [2022-02-20 23:51:23,317 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:23,317 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:23,620 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1775177419] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:23,620 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:23,620 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 10 [2022-02-20 23:51:23,620 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1730039946] [2022-02-20 23:51:23,620 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:23,621 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 23:51:23,621 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:23,621 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:23,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:23,643 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 23:51:23,643 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:23,643 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 23:51:23,644 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=127, Unknown=1, NotChecked=0, Total=156 [2022-02-20 23:51:23,644 INFO L87 Difference]: Start difference. First operand 58 states and 70 transitions. Second operand has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:27,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:27,319 INFO L93 Difference]: Finished difference Result 160 states and 195 transitions. [2022-02-20 23:51:27,319 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:51:27,320 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 23:51:27,320 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:27,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:27,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 153 transitions. [2022-02-20 23:51:27,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:27,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 153 transitions. [2022-02-20 23:51:27,324 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 153 transitions. [2022-02-20 23:51:27,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:27,461 INFO L225 Difference]: With dead ends: 160 [2022-02-20 23:51:27,462 INFO L226 Difference]: Without dead ends: 160 [2022-02-20 23:51:27,462 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 29 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=37, Invalid=171, Unknown=2, NotChecked=0, Total=210 [2022-02-20 23:51:27,462 INFO L933 BasicCegarLoop]: 60 mSDtfsCounter, 112 mSDsluCounter, 313 mSDsCounter, 0 mSdLazyCounter, 341 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 114 SdHoareTripleChecker+Valid, 373 SdHoareTripleChecker+Invalid, 408 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 341 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 49 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:27,463 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [114 Valid, 373 Invalid, 408 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 341 Invalid, 0 Unknown, 49 Unchecked, 0.5s Time] [2022-02-20 23:51:27,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-02-20 23:51:27,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 83. [2022-02-20 23:51:27,469 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:27,469 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:27,469 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:27,470 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:27,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:27,473 INFO L93 Difference]: Finished difference Result 160 states and 195 transitions. [2022-02-20 23:51:27,473 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 195 transitions. [2022-02-20 23:51:27,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:27,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:27,474 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) Second operand 160 states. [2022-02-20 23:51:27,474 INFO L87 Difference]: Start difference. First operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) Second operand 160 states. [2022-02-20 23:51:27,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:27,479 INFO L93 Difference]: Finished difference Result 160 states and 195 transitions. [2022-02-20 23:51:27,479 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 195 transitions. [2022-02-20 23:51:27,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:27,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:27,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:27,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:27,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 63 states have (on average 1.5396825396825398) internal successors, (97), 74 states have internal predecessors, (97), 5 states have call successors, (5), 2 states have call predecessors, (5), 4 states have return successors, (10), 6 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:27,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 112 transitions. [2022-02-20 23:51:27,482 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 112 transitions. Word has length 18 [2022-02-20 23:51:27,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:27,482 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 112 transitions. [2022-02-20 23:51:27,482 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 10 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:27,482 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 112 transitions. [2022-02-20 23:51:27,483 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:27,483 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:27,486 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:27,490 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:51:27,694 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:51:27,888 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:51:27,888 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:27,888 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:27,889 INFO L85 PathProgramCache]: Analyzing trace with hash 594419839, now seen corresponding path program 1 times [2022-02-20 23:51:27,889 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:27,889 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1037402713] [2022-02-20 23:51:27,889 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:27,889 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:27,889 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:27,890 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:51:27,892 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:51:27,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:27,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 56 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:51:27,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:27,952 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:28,020 INFO L290 TraceCheckUtils]: 0: Hoare triple {1967#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {1967#true} is VALID [2022-02-20 23:51:28,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {1967#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {1967#true} is VALID [2022-02-20 23:51:28,020 INFO L272 TraceCheckUtils]: 2: Hoare triple {1967#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {1967#true} is VALID [2022-02-20 23:51:28,020 INFO L290 TraceCheckUtils]: 3: Hoare triple {1967#true} ~size := #in~size; {1967#true} is VALID [2022-02-20 23:51:28,021 INFO L290 TraceCheckUtils]: 4: Hoare triple {1967#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {1984#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {1984#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {1984#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,023 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1984#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} {1967#true} #76#return; {1991#(and (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,024 INFO L290 TraceCheckUtils]: 7: Hoare triple {1991#(and (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {1995#(and (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {1995#(and (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {1968#false} is VALID [2022-02-20 23:51:28,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {1968#false} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {1968#false} is VALID [2022-02-20 23:51:28,025 INFO L272 TraceCheckUtils]: 10: Hoare triple {1968#false} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {1968#false} is VALID [2022-02-20 23:51:28,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {1968#false} ~size := #in~size; {1968#false} is VALID [2022-02-20 23:51:28,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {1968#false} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {1968#false} is VALID [2022-02-20 23:51:28,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {1968#false} assume true; {1968#false} is VALID [2022-02-20 23:51:28,031 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1968#false} {1968#false} #78#return; {1968#false} is VALID [2022-02-20 23:51:28,032 INFO L290 TraceCheckUtils]: 15: Hoare triple {1968#false} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {1968#false} is VALID [2022-02-20 23:51:28,032 INFO L290 TraceCheckUtils]: 16: Hoare triple {1968#false} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {1968#false} is VALID [2022-02-20 23:51:28,032 INFO L290 TraceCheckUtils]: 17: Hoare triple {1968#false} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {1968#false} is VALID [2022-02-20 23:51:28,032 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:28,032 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:28,032 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:28,032 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1037402713] [2022-02-20 23:51:28,033 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1037402713] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:28,033 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:28,033 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:28,033 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2025187200] [2022-02-20 23:51:28,033 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:28,033 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 23:51:28,034 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:28,034 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:28,047 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:28,047 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:28,047 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:28,048 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:28,048 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:28,048 INFO L87 Difference]: Start difference. First operand 83 states and 112 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:28,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,229 INFO L93 Difference]: Finished difference Result 76 states and 100 transitions. [2022-02-20 23:51:28,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:51:28,230 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 23:51:28,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:28,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:28,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:51:28,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:28,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:51:28,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-02-20 23:51:28,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:28,272 INFO L225 Difference]: With dead ends: 76 [2022-02-20 23:51:28,272 INFO L226 Difference]: Without dead ends: 72 [2022-02-20 23:51:28,272 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:28,273 INFO L933 BasicCegarLoop]: 44 mSDtfsCounter, 0 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:28,273 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 156 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:28,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-02-20 23:51:28,276 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 72. [2022-02-20 23:51:28,276 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:28,277 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,277 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,277 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,279 INFO L93 Difference]: Finished difference Result 72 states and 96 transitions. [2022-02-20 23:51:28,279 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 96 transitions. [2022-02-20 23:51:28,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,284 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Second operand 72 states. [2022-02-20 23:51:28,284 INFO L87 Difference]: Start difference. First operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Second operand 72 states. [2022-02-20 23:51:28,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,286 INFO L93 Difference]: Finished difference Result 72 states and 96 transitions. [2022-02-20 23:51:28,286 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 96 transitions. [2022-02-20 23:51:28,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:28,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:28,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 55 states have (on average 1.5454545454545454) internal successors, (85), 65 states have internal predecessors, (85), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 96 transitions. [2022-02-20 23:51:28,289 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 96 transitions. Word has length 18 [2022-02-20 23:51:28,289 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:28,289 INFO L470 AbstractCegarLoop]: Abstraction has 72 states and 96 transitions. [2022-02-20 23:51:28,290 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:28,290 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 96 transitions. [2022-02-20 23:51:28,290 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:51:28,290 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:28,290 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:28,298 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:51:28,496 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:51:28,497 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:28,497 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:28,497 INFO L85 PathProgramCache]: Analyzing trace with hash 517297676, now seen corresponding path program 1 times [2022-02-20 23:51:28,497 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:28,497 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1248233156] [2022-02-20 23:51:28,498 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:28,498 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:28,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:28,499 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:51:28,500 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:51:28,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:28,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 65 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:28,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:28,553 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:28,603 INFO L290 TraceCheckUtils]: 0: Hoare triple {2317#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {2317#true} is VALID [2022-02-20 23:51:28,604 INFO L290 TraceCheckUtils]: 1: Hoare triple {2317#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {2317#true} is VALID [2022-02-20 23:51:28,604 INFO L272 TraceCheckUtils]: 2: Hoare triple {2317#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {2317#true} is VALID [2022-02-20 23:51:28,604 INFO L290 TraceCheckUtils]: 3: Hoare triple {2317#true} ~size := #in~size; {2317#true} is VALID [2022-02-20 23:51:28,604 INFO L290 TraceCheckUtils]: 4: Hoare triple {2317#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {2317#true} is VALID [2022-02-20 23:51:28,604 INFO L290 TraceCheckUtils]: 5: Hoare triple {2317#true} assume true; {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2317#true} {2317#true} #76#return; {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {2317#true} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L290 TraceCheckUtils]: 8: Hoare triple {2317#true} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L290 TraceCheckUtils]: 9: Hoare triple {2317#true} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L272 TraceCheckUtils]: 10: Hoare triple {2317#true} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {2317#true} is VALID [2022-02-20 23:51:28,605 INFO L290 TraceCheckUtils]: 11: Hoare triple {2317#true} ~size := #in~size; {2317#true} is VALID [2022-02-20 23:51:28,606 INFO L290 TraceCheckUtils]: 12: Hoare triple {2317#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {2358#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,606 INFO L290 TraceCheckUtils]: 13: Hoare triple {2358#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {2358#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,607 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {2358#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} {2317#true} #78#return; {2365#(not (= |ULTIMATE.start_entry_point_#t~ret40#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,607 INFO L290 TraceCheckUtils]: 15: Hoare triple {2365#(not (= |ULTIMATE.start_entry_point_#t~ret40#1.base| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {2369#(not (= |ULTIMATE.start_entry_point_~p~0#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,607 INFO L290 TraceCheckUtils]: 16: Hoare triple {2369#(not (= |ULTIMATE.start_entry_point_~p~0#1.base| (_ bv0 32)))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {2318#false} is VALID [2022-02-20 23:51:28,607 INFO L290 TraceCheckUtils]: 17: Hoare triple {2318#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {2318#false} is VALID [2022-02-20 23:51:28,608 INFO L290 TraceCheckUtils]: 18: Hoare triple {2318#false} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {2318#false} is VALID [2022-02-20 23:51:28,608 INFO L290 TraceCheckUtils]: 19: Hoare triple {2318#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {2318#false} is VALID [2022-02-20 23:51:28,608 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:28,608 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:28,608 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:28,608 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1248233156] [2022-02-20 23:51:28,608 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1248233156] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:28,609 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:28,609 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:28,609 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [552951461] [2022-02-20 23:51:28,609 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:28,609 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 20 [2022-02-20 23:51:28,609 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:28,610 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:51:28,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:28,625 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:28,625 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:28,625 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:28,625 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:28,625 INFO L87 Difference]: Start difference. First operand 72 states and 96 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:51:28,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,866 INFO L93 Difference]: Finished difference Result 117 states and 152 transitions. [2022-02-20 23:51:28,866 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:51:28,867 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 20 [2022-02-20 23:51:28,867 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:28,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:51:28,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 77 transitions. [2022-02-20 23:51:28,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:51:28,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 77 transitions. [2022-02-20 23:51:28,869 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 77 transitions. [2022-02-20 23:51:28,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:28,928 INFO L225 Difference]: With dead ends: 117 [2022-02-20 23:51:28,928 INFO L226 Difference]: Without dead ends: 117 [2022-02-20 23:51:28,928 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:51:28,929 INFO L933 BasicCegarLoop]: 61 mSDtfsCounter, 27 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:28,929 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 216 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:28,930 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2022-02-20 23:51:28,932 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 76. [2022-02-20 23:51:28,932 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:28,933 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,933 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,933 INFO L87 Difference]: Start difference. First operand 117 states. Second operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,936 INFO L93 Difference]: Finished difference Result 117 states and 152 transitions. [2022-02-20 23:51:28,936 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 152 transitions. [2022-02-20 23:51:28,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,936 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 117 states. [2022-02-20 23:51:28,937 INFO L87 Difference]: Start difference. First operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 117 states. [2022-02-20 23:51:28,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,939 INFO L93 Difference]: Finished difference Result 117 states and 152 transitions. [2022-02-20 23:51:28,939 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 152 transitions. [2022-02-20 23:51:28,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,939 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:28,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:28,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 59 states have (on average 1.5084745762711864) internal successors, (89), 67 states have internal predecessors, (89), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:28,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 100 transitions. [2022-02-20 23:51:28,941 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 100 transitions. Word has length 20 [2022-02-20 23:51:28,941 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:28,942 INFO L470 AbstractCegarLoop]: Abstraction has 76 states and 100 transitions. [2022-02-20 23:51:28,942 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 1 states have call successors, (2), 1 states have call predecessors, (2), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:51:28,942 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 100 transitions. [2022-02-20 23:51:28,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:51:28,942 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:28,942 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:28,950 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:51:29,148 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:51:29,149 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:29,149 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:29,149 INFO L85 PathProgramCache]: Analyzing trace with hash -2034859285, now seen corresponding path program 1 times [2022-02-20 23:51:29,149 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:29,149 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1436044818] [2022-02-20 23:51:29,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:29,149 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:29,149 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:29,150 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:51:29,151 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:51:29,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,191 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:51:29,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,205 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:29,254 INFO L290 TraceCheckUtils]: 0: Hoare triple {2810#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L290 TraceCheckUtils]: 1: Hoare triple {2810#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L272 TraceCheckUtils]: 2: Hoare triple {2810#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L290 TraceCheckUtils]: 3: Hoare triple {2810#true} ~size := #in~size; {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L290 TraceCheckUtils]: 4: Hoare triple {2810#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L290 TraceCheckUtils]: 5: Hoare triple {2810#true} assume true; {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2810#true} {2810#true} #76#return; {2810#true} is VALID [2022-02-20 23:51:29,255 INFO L290 TraceCheckUtils]: 7: Hoare triple {2810#true} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {2810#true} is VALID [2022-02-20 23:51:29,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {2810#true} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,272 INFO L290 TraceCheckUtils]: 9: Hoare triple {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,272 INFO L272 TraceCheckUtils]: 10: Hoare triple {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {2810#true} is VALID [2022-02-20 23:51:29,272 INFO L290 TraceCheckUtils]: 11: Hoare triple {2810#true} ~size := #in~size; {2810#true} is VALID [2022-02-20 23:51:29,272 INFO L290 TraceCheckUtils]: 12: Hoare triple {2810#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {2810#true} is VALID [2022-02-20 23:51:29,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {2810#true} assume true; {2810#true} is VALID [2022-02-20 23:51:29,273 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {2810#true} {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} #78#return; {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,273 INFO L290 TraceCheckUtils]: 15: Hoare triple {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,273 INFO L290 TraceCheckUtils]: 16: Hoare triple {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,274 INFO L290 TraceCheckUtils]: 17: Hoare triple {2839#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {2867#(= (_ bv4294967295 32) |ULTIMATE.start_entry_point_~j~0#1|)} is VALID [2022-02-20 23:51:29,274 INFO L290 TraceCheckUtils]: 18: Hoare triple {2867#(= (_ bv4294967295 32) |ULTIMATE.start_entry_point_~j~0#1|)} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {2811#false} is VALID [2022-02-20 23:51:29,274 INFO L290 TraceCheckUtils]: 19: Hoare triple {2811#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {2811#false} is VALID [2022-02-20 23:51:29,274 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:51:29,274 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:29,274 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:29,274 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1436044818] [2022-02-20 23:51:29,274 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1436044818] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:29,274 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:29,275 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:51:29,275 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1374822139] [2022-02-20 23:51:29,275 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:29,275 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-02-20 23:51:29,275 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:29,275 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:29,289 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:29,289 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:29,289 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:29,289 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:29,290 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:29,290 INFO L87 Difference]: Start difference. First operand 76 states and 100 transitions. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:29,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,430 INFO L93 Difference]: Finished difference Result 76 states and 91 transitions. [2022-02-20 23:51:29,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:29,431 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-02-20 23:51:29,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:29,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:29,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 58 transitions. [2022-02-20 23:51:29,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:29,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 58 transitions. [2022-02-20 23:51:29,432 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 58 transitions. [2022-02-20 23:51:29,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:29,474 INFO L225 Difference]: With dead ends: 76 [2022-02-20 23:51:29,475 INFO L226 Difference]: Without dead ends: 76 [2022-02-20 23:51:29,475 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:29,475 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 17 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:29,476 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 101 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:29,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-02-20 23:51:29,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 68. [2022-02-20 23:51:29,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:29,478 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:29,479 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:29,479 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:29,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,481 INFO L93 Difference]: Finished difference Result 76 states and 91 transitions. [2022-02-20 23:51:29,481 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 91 transitions. [2022-02-20 23:51:29,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,482 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 76 states. [2022-02-20 23:51:29,482 INFO L87 Difference]: Start difference. First operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 76 states. [2022-02-20 23:51:29,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,484 INFO L93 Difference]: Finished difference Result 76 states and 91 transitions. [2022-02-20 23:51:29,484 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 91 transitions. [2022-02-20 23:51:29,484 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,484 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,484 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:29,484 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:29,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 51 states have (on average 1.4313725490196079) internal successors, (73), 59 states have internal predecessors, (73), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:29,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 84 transitions. [2022-02-20 23:51:29,486 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 84 transitions. Word has length 20 [2022-02-20 23:51:29,486 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:29,486 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 84 transitions. [2022-02-20 23:51:29,486 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (2), 1 states have call predecessors, (2), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 23:51:29,486 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 84 transitions. [2022-02-20 23:51:29,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:51:29,487 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:29,487 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:29,501 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:51:29,693 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:51:29,694 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:29,694 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:29,694 INFO L85 PathProgramCache]: Analyzing trace with hash 1343870148, now seen corresponding path program 1 times [2022-02-20 23:51:29,694 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:29,694 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1866507787] [2022-02-20 23:51:29,694 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:29,695 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:29,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:29,696 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:51:29,699 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:51:29,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,732 INFO L263 TraceCheckSpWp]: Trace formula consists of 60 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:51:29,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,739 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:30,014 INFO L290 TraceCheckUtils]: 0: Hoare triple {3171#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,015 INFO L272 TraceCheckUtils]: 2: Hoare triple {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,016 INFO L290 TraceCheckUtils]: 3: Hoare triple {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} ~size := #in~size; {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,016 INFO L290 TraceCheckUtils]: 4: Hoare triple {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3189#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {3189#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))} assume true; {3189#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,017 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3189#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))} {3176#(bvult (_ bv0 32) |#StackHeapBarrier|)} #76#return; {3196#(and (not (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32))) (bvult |ULTIMATE.start_entry_point_#t~ret38#1.base| |#StackHeapBarrier|))} is VALID [2022-02-20 23:51:30,018 INFO L290 TraceCheckUtils]: 7: Hoare triple {3196#(and (not (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32))) (bvult |ULTIMATE.start_entry_point_#t~ret38#1.base| |#StackHeapBarrier|))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,018 INFO L290 TraceCheckUtils]: 8: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,019 INFO L290 TraceCheckUtils]: 9: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,021 INFO L272 TraceCheckUtils]: 10: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} is VALID [2022-02-20 23:51:30,021 INFO L290 TraceCheckUtils]: 11: Hoare triple {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} ~size := #in~size; {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} is VALID [2022-02-20 23:51:30,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} is VALID [2022-02-20 23:51:30,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} assume true; {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} is VALID [2022-02-20 23:51:30,022 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {3210#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| (_ bv0 32))) (bvult |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_5| |#StackHeapBarrier|)))} {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} #78#return; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,023 INFO L290 TraceCheckUtils]: 15: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,024 INFO L290 TraceCheckUtils]: 17: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,025 INFO L290 TraceCheckUtils]: 18: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume !~bvsge32(entry_point_~j~0#1, 0bv32); {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,025 INFO L290 TraceCheckUtils]: 19: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume 0bv32 == entry_point_~array~0#1.offset; {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} is VALID [2022-02-20 23:51:30,025 INFO L290 TraceCheckUtils]: 20: Hoare triple {3200#(and (bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|) (not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32))))} assume !~bvult32(entry_point_~array~0#1.base, #StackHeapBarrier); {3172#false} is VALID [2022-02-20 23:51:30,026 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:51:30,026 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:30,156 INFO L290 TraceCheckUtils]: 20: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume !~bvult32(entry_point_~array~0#1.base, #StackHeapBarrier); {3172#false} is VALID [2022-02-20 23:51:30,156 INFO L290 TraceCheckUtils]: 19: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume 0bv32 == entry_point_~array~0#1.offset; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,157 INFO L290 TraceCheckUtils]: 18: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume !~bvsge32(entry_point_~j~0#1, 0bv32); {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,158 INFO L290 TraceCheckUtils]: 16: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,158 INFO L290 TraceCheckUtils]: 15: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,159 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {3171#true} {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} #78#return; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {3171#true} assume true; {3171#true} is VALID [2022-02-20 23:51:30,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {3171#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {3171#true} is VALID [2022-02-20 23:51:30,159 INFO L290 TraceCheckUtils]: 11: Hoare triple {3171#true} ~size := #in~size; {3171#true} is VALID [2022-02-20 23:51:30,159 INFO L272 TraceCheckUtils]: 10: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {3171#true} is VALID [2022-02-20 23:51:30,160 INFO L290 TraceCheckUtils]: 9: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {3281#(bvult |ULTIMATE.start_entry_point_#t~ret38#1.base| |#StackHeapBarrier|)} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {3241#(bvult |ULTIMATE.start_entry_point_~array~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,161 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3288#(bvult |ldv_malloc_#res.base| |#StackHeapBarrier|)} {3171#true} #76#return; {3281#(bvult |ULTIMATE.start_entry_point_#t~ret38#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,164 INFO L290 TraceCheckUtils]: 5: Hoare triple {3288#(bvult |ldv_malloc_#res.base| |#StackHeapBarrier|)} assume true; {3288#(bvult |ldv_malloc_#res.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,165 INFO L290 TraceCheckUtils]: 4: Hoare triple {3171#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3288#(bvult |ldv_malloc_#res.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:51:30,165 INFO L290 TraceCheckUtils]: 3: Hoare triple {3171#true} ~size := #in~size; {3171#true} is VALID [2022-02-20 23:51:30,165 INFO L272 TraceCheckUtils]: 2: Hoare triple {3171#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {3171#true} is VALID [2022-02-20 23:51:30,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {3171#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {3171#true} is VALID [2022-02-20 23:51:30,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {3171#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {3171#true} is VALID [2022-02-20 23:51:30,165 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:30,165 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:30,165 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1866507787] [2022-02-20 23:51:30,165 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1866507787] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:51:30,165 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:30,166 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 4] total 9 [2022-02-20 23:51:30,166 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [521609896] [2022-02-20 23:51:30,166 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:30,167 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 21 [2022-02-20 23:51:30,167 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:30,167 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:51:30,204 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:51:30,204 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:51:30,204 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:30,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:51:30,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:51:30,205 INFO L87 Difference]: Start difference. First operand 68 states and 84 transitions. Second operand has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:51:30,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,527 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:51:30,527 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:51:30,527 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 21 [2022-02-20 23:51:30,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:30,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:51:30,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 45 transitions. [2022-02-20 23:51:30,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:51:30,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 45 transitions. [2022-02-20 23:51:30,529 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 45 transitions. [2022-02-20 23:51:30,576 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:30,576 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:51:30,576 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:51:30,577 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 31 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:51:30,577 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 62 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 9 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:30,577 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 77 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 55 Invalid, 0 Unknown, 9 Unchecked, 0.1s Time] [2022-02-20 23:51:30,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:51:30,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2022-02-20 23:51:30,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:30,580 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:30,580 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:30,580 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:30,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,581 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:51:30,581 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:51:30,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:30,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:30,582 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 67 states. [2022-02-20 23:51:30,582 INFO L87 Difference]: Start difference. First operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) Second operand 67 states. [2022-02-20 23:51:30,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,583 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:51:30,588 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:51:30,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:30,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:30,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:30,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:30,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 51 states have (on average 1.392156862745098) internal successors, (71), 58 states have internal predecessors, (71), 4 states have call successors, (4), 2 states have call predecessors, (4), 3 states have return successors, (7), 6 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 23:51:30,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 82 transitions. [2022-02-20 23:51:30,590 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 82 transitions. Word has length 21 [2022-02-20 23:51:30,590 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:30,590 INFO L470 AbstractCegarLoop]: Abstraction has 67 states and 82 transitions. [2022-02-20 23:51:30,590 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 8 states have internal predecessors, (33), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:51:30,590 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:51:30,591 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:51:30,591 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:30,591 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:30,600 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:51:30,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 [2022-02-20 23:51:30,797 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:30,797 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:30,797 INFO L85 PathProgramCache]: Analyzing trace with hash 2006472631, now seen corresponding path program 1 times [2022-02-20 23:51:30,797 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:30,797 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [84553287] [2022-02-20 23:51:30,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:30,798 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:30,798 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:30,799 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:51:30,800 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2022-02-20 23:51:30,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:30,853 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:30,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:30,862 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:30,943 INFO L290 TraceCheckUtils]: 0: Hoare triple {3571#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {3571#true} is VALID [2022-02-20 23:51:30,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {3571#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:30,943 INFO L272 TraceCheckUtils]: 2: Hoare triple {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {3571#true} is VALID [2022-02-20 23:51:30,943 INFO L290 TraceCheckUtils]: 3: Hoare triple {3571#true} ~size := #in~size; {3571#true} is VALID [2022-02-20 23:51:30,944 INFO L290 TraceCheckUtils]: 4: Hoare triple {3571#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3571#true} is VALID [2022-02-20 23:51:30,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {3571#true} assume true; {3571#true} is VALID [2022-02-20 23:51:30,944 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3571#true} {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:30,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:30,945 INFO L290 TraceCheckUtils]: 8: Hoare triple {3579#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,946 INFO L272 TraceCheckUtils]: 10: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {3571#true} is VALID [2022-02-20 23:51:30,946 INFO L290 TraceCheckUtils]: 11: Hoare triple {3571#true} ~size := #in~size; {3571#true} is VALID [2022-02-20 23:51:30,946 INFO L290 TraceCheckUtils]: 12: Hoare triple {3571#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3571#true} is VALID [2022-02-20 23:51:30,946 INFO L290 TraceCheckUtils]: 13: Hoare triple {3571#true} assume true; {3571#true} is VALID [2022-02-20 23:51:30,947 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {3571#true} {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} #78#return; {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,948 INFO L290 TraceCheckUtils]: 16: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,948 INFO L290 TraceCheckUtils]: 17: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:51:30,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {3601#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {3632#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)))} is VALID [2022-02-20 23:51:30,949 INFO L290 TraceCheckUtils]: 19: Hoare triple {3632#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)))} assume !~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3572#false} is VALID [2022-02-20 23:51:30,949 INFO L290 TraceCheckUtils]: 20: Hoare triple {3572#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {3572#false} is VALID [2022-02-20 23:51:30,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {3572#false} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {3572#false} is VALID [2022-02-20 23:51:30,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {3572#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {3572#false} is VALID [2022-02-20 23:51:30,950 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:51:30,950 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:31,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {3572#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {3572#false} is VALID [2022-02-20 23:51:31,052 INFO L290 TraceCheckUtils]: 21: Hoare triple {3572#false} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {3572#false} is VALID [2022-02-20 23:51:31,052 INFO L290 TraceCheckUtils]: 20: Hoare triple {3572#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {3572#false} is VALID [2022-02-20 23:51:31,052 INFO L290 TraceCheckUtils]: 19: Hoare triple {3654#(bvslt |ULTIMATE.start_entry_point_~i~0#1| |ULTIMATE.start_entry_point_~len~0#1|)} assume !~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3572#false} is VALID [2022-02-20 23:51:31,076 INFO L290 TraceCheckUtils]: 18: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {3654#(bvslt |ULTIMATE.start_entry_point_~i~0#1| |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,076 INFO L290 TraceCheckUtils]: 17: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,077 INFO L290 TraceCheckUtils]: 16: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,077 INFO L290 TraceCheckUtils]: 15: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,078 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {3571#true} {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} #78#return; {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,078 INFO L290 TraceCheckUtils]: 13: Hoare triple {3571#true} assume true; {3571#true} is VALID [2022-02-20 23:51:31,078 INFO L290 TraceCheckUtils]: 12: Hoare triple {3571#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3571#true} is VALID [2022-02-20 23:51:31,078 INFO L290 TraceCheckUtils]: 11: Hoare triple {3571#true} ~size := #in~size; {3571#true} is VALID [2022-02-20 23:51:31,078 INFO L272 TraceCheckUtils]: 10: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {3571#true} is VALID [2022-02-20 23:51:31,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {3658#(bvslt (bvadd |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,084 INFO L290 TraceCheckUtils]: 7: Hoare triple {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,084 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3571#true} {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} #76#return; {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {3571#true} assume true; {3571#true} is VALID [2022-02-20 23:51:31,085 INFO L290 TraceCheckUtils]: 4: Hoare triple {3571#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {3571#true} is VALID [2022-02-20 23:51:31,085 INFO L290 TraceCheckUtils]: 3: Hoare triple {3571#true} ~size := #in~size; {3571#true} is VALID [2022-02-20 23:51:31,085 INFO L272 TraceCheckUtils]: 2: Hoare triple {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {3571#true} is VALID [2022-02-20 23:51:31,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {3571#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {3689#(bvslt (_ bv1 32) |ULTIMATE.start_entry_point_~len~0#1|)} is VALID [2022-02-20 23:51:31,085 INFO L290 TraceCheckUtils]: 0: Hoare triple {3571#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {3571#true} is VALID [2022-02-20 23:51:31,085 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:51:31,086 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:31,086 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [84553287] [2022-02-20 23:51:31,086 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [84553287] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:51:31,086 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:31,086 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-02-20 23:51:31,086 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1848059654] [2022-02-20 23:51:31,086 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:31,086 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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) Word has length 23 [2022-02-20 23:51:31,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:31,087 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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:51:31,132 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:51:31,132 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:51:31,133 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:31,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:51:31,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:51:31,133 INFO L87 Difference]: Start difference. First operand 67 states and 82 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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:51:31,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:31,560 INFO L93 Difference]: Finished difference Result 183 states and 218 transitions. [2022-02-20 23:51:31,560 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:51:31,560 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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) Word has length 23 [2022-02-20 23:51:31,560 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:31,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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:51:31,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 137 transitions. [2022-02-20 23:51:31,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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:51:31,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 137 transitions. [2022-02-20 23:51:31,562 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 137 transitions. [2022-02-20 23:51:31,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:31,711 INFO L225 Difference]: With dead ends: 183 [2022-02-20 23:51:31,711 INFO L226 Difference]: Without dead ends: 183 [2022-02-20 23:51:31,711 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 38 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=52, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:51:31,712 INFO L933 BasicCegarLoop]: 47 mSDtfsCounter, 187 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:31,712 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [188 Valid, 194 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:51:31,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 183 states. [2022-02-20 23:51:31,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 183 to 94. [2022-02-20 23:51:31,716 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:31,716 INFO L82 GeneralOperation]: Start isEquivalent. First operand 183 states. Second operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:31,716 INFO L74 IsIncluded]: Start isIncluded. First operand 183 states. Second operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:31,716 INFO L87 Difference]: Start difference. First operand 183 states. Second operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:31,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:31,719 INFO L93 Difference]: Finished difference Result 183 states and 218 transitions. [2022-02-20 23:51:31,720 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 218 transitions. [2022-02-20 23:51:31,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:31,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:31,721 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) Second operand 183 states. [2022-02-20 23:51:31,721 INFO L87 Difference]: Start difference. First operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) Second operand 183 states. [2022-02-20 23:51:31,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:31,724 INFO L93 Difference]: Finished difference Result 183 states and 218 transitions. [2022-02-20 23:51:31,724 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 218 transitions. [2022-02-20 23:51:31,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:31,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:31,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:31,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:31,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 75 states have (on average 1.36) internal successors, (102), 80 states have internal predecessors, (102), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 11 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:31,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 122 transitions. [2022-02-20 23:51:31,727 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 122 transitions. Word has length 23 [2022-02-20 23:51:31,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:31,727 INFO L470 AbstractCegarLoop]: Abstraction has 94 states and 122 transitions. [2022-02-20 23:51:31,727 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 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:51:31,727 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 122 transitions. [2022-02-20 23:51:31,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:51:31,728 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:31,728 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:31,754 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:51:31,936 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:51:31,937 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr10ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:31,937 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:31,937 INFO L85 PathProgramCache]: Analyzing trace with hash 1845507550, now seen corresponding path program 1 times [2022-02-20 23:51:31,937 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:31,937 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [747255555] [2022-02-20 23:51:31,938 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:31,938 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:31,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:31,939 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:51:31,940 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:51:31,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:31,980 INFO L263 TraceCheckSpWp]: Trace formula consists of 65 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:51:31,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:31,992 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:32,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {4360#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {4360#true} is VALID [2022-02-20 23:51:32,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {4360#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {4368#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:32,203 INFO L272 TraceCheckUtils]: 2: Hoare triple {4368#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,204 INFO L290 TraceCheckUtils]: 3: Hoare triple {4372#(= |old(#valid)| |#valid|)} ~size := #in~size; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,205 INFO L290 TraceCheckUtils]: 4: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} is VALID [2022-02-20 23:51:32,205 INFO L290 TraceCheckUtils]: 5: Hoare triple {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} assume true; {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} is VALID [2022-02-20 23:51:32,206 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} {4368#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} #76#return; {4386#(and (= (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base|)) (_ bv0 1)) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,207 INFO L290 TraceCheckUtils]: 7: Hoare triple {4386#(and (= (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base|)) (_ bv0 1)) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base| v_ArrVal_58) |#valid|)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,207 INFO L290 TraceCheckUtils]: 8: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,208 INFO L290 TraceCheckUtils]: 9: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,209 INFO L272 TraceCheckUtils]: 10: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {4372#(= |old(#valid)| |#valid|)} ~size := #in~size; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,209 INFO L290 TraceCheckUtils]: 12: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,210 INFO L290 TraceCheckUtils]: 13: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume true; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:32,210 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {4372#(= |old(#valid)| |#valid|)} {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} #78#return; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,211 INFO L290 TraceCheckUtils]: 15: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,212 INFO L290 TraceCheckUtils]: 16: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume !~bvsge32(entry_point_~j~0#1, 0bv32); {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume 0bv32 == entry_point_~array~0#1.offset; {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,214 INFO L290 TraceCheckUtils]: 20: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume ~bvult32(entry_point_~array~0#1.base, #StackHeapBarrier); {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} is VALID [2022-02-20 23:51:32,215 INFO L290 TraceCheckUtils]: 21: Hoare triple {4390#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)))} assume 0bv32 == entry_point_~array~0#1.base || 1bv1 == #valid[entry_point_~array~0#1.base];call ULTIMATE.dealloc(entry_point_~array~0#1.base, entry_point_~array~0#1.offset); {4433#(exists ((|ULTIMATE.start_entry_point_~array~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 1)) |#valid|)))} is VALID [2022-02-20 23:51:32,215 INFO L290 TraceCheckUtils]: 22: Hoare triple {4433#(exists ((|ULTIMATE.start_entry_point_~array~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 1)) |#valid|)))} assume { :end_inline_entry_point } true; {4433#(exists ((|ULTIMATE.start_entry_point_~array~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 1)) |#valid|)))} is VALID [2022-02-20 23:51:32,216 INFO L290 TraceCheckUtils]: 23: Hoare triple {4433#(exists ((|ULTIMATE.start_entry_point_~array~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 1)) |#valid|)))} assume !(#valid == main_old_#valid#1); {4361#false} is VALID [2022-02-20 23:51:32,216 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:32,216 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:36,391 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:36,391 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [747255555] [2022-02-20 23:51:36,391 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [747255555] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:36,391 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1650696689] [2022-02-20 23:51:36,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:36,391 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:36,391 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:51:36,392 INFO L229 MonitoredProcess]: Starting monitored process 14 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:51:36,393 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (14)] Waiting until timeout for monitored process [2022-02-20 23:51:36,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:36,455 INFO L263 TraceCheckSpWp]: Trace formula consists of 65 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:51:36,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:36,464 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:36,729 INFO L290 TraceCheckUtils]: 0: Hoare triple {4360#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {4497#(= (_ bv0 1) (select |#valid| (_ bv0 32)))} is VALID [2022-02-20 23:51:36,730 INFO L290 TraceCheckUtils]: 1: Hoare triple {4497#(= (_ bv0 1) (select |#valid| (_ bv0 32)))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,737 INFO L272 TraceCheckUtils]: 2: Hoare triple {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,737 INFO L290 TraceCheckUtils]: 3: Hoare triple {4372#(= |old(#valid)| |#valid|)} ~size := #in~size; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,738 INFO L290 TraceCheckUtils]: 4: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} is VALID [2022-02-20 23:51:36,739 INFO L290 TraceCheckUtils]: 5: Hoare triple {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} assume true; {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} is VALID [2022-02-20 23:51:36,740 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {4379#(and (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |old(#valid)| |ldv_malloc_#res.base| v_ArrVal_58) |#valid|)) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1)))} {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} #76#return; {4517#(and (= (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base|)) (_ bv0 1)) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {4517#(and (= (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base|)) (_ bv0 1)) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_#t~ret38#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,743 INFO L272 TraceCheckUtils]: 10: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {4372#(= |old(#valid)| |#valid|)} ~size := #in~size; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,744 INFO L290 TraceCheckUtils]: 12: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {4372#(= |old(#valid)| |#valid|)} assume true; {4372#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:36,745 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {4372#(= |old(#valid)| |#valid|)} {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} #78#return; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,746 INFO L290 TraceCheckUtils]: 15: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,747 INFO L290 TraceCheckUtils]: 16: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,749 INFO L290 TraceCheckUtils]: 18: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume !~bvsge32(entry_point_~j~0#1, 0bv32); {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,749 INFO L290 TraceCheckUtils]: 19: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume 0bv32 == entry_point_~array~0#1.offset; {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume ~bvult32(entry_point_~array~0#1.base, #StackHeapBarrier); {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {4521#(and (= (_ bv0 1) (bvneg (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base|))) (exists ((v_ArrVal_58 (_ BitVec 1))) (= (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_entry_point_~array~0#1.base| v_ArrVal_58) |#valid|)) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| (_ bv0 32))))} assume 0bv32 == entry_point_~array~0#1.base || 1bv1 == #valid[entry_point_~array~0#1.base];call ULTIMATE.dealloc(entry_point_~array~0#1.base, entry_point_~array~0#1.offset); {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} assume { :end_inline_entry_point } true; {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} is VALID [2022-02-20 23:51:36,752 INFO L290 TraceCheckUtils]: 23: Hoare triple {4501#(and (= |#valid| |ULTIMATE.start_main_old_#valid#1|) (= (_ bv0 1) (select |#valid| (_ bv0 32))))} assume !(#valid == main_old_#valid#1); {4361#false} is VALID [2022-02-20 23:51:36,752 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:36,752 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:40,938 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1650696689] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:40,938 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:40,938 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 11 [2022-02-20 23:51:40,938 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2128908869] [2022-02-20 23:51:40,938 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:40,939 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 24 [2022-02-20 23:51:40,939 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:40,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 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:51:40,972 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:51:40,972 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:51:40,972 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:40,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:51:40,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=166, Unknown=2, NotChecked=0, Total=210 [2022-02-20 23:51:40,973 INFO L87 Difference]: Start difference. First operand 94 states and 122 transitions. Second operand has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 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:51:41,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:41,293 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-02-20 23:51:41,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:51:41,294 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 24 [2022-02-20 23:51:41,294 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:41,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 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:51:41,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60 transitions. [2022-02-20 23:51:41,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 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:51:41,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 60 transitions. [2022-02-20 23:51:41,296 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 60 transitions. [2022-02-20 23:51:41,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:41,345 INFO L225 Difference]: With dead ends: 100 [2022-02-20 23:51:41,345 INFO L226 Difference]: Without dead ends: 93 [2022-02-20 23:51:41,345 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 64 SyntacticMatches, 5 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 8.2s TimeCoverageRelationStatistics Valid=50, Invalid=220, Unknown=2, NotChecked=0, Total=272 [2022-02-20 23:51:41,346 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 7 mSDsluCounter, 168 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 67 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:41,346 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 205 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 25 Invalid, 0 Unknown, 67 Unchecked, 0.0s Time] [2022-02-20 23:51:41,346 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-02-20 23:51:41,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 90. [2022-02-20 23:51:41,348 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:41,349 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:41,349 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:41,349 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:41,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:41,351 INFO L93 Difference]: Finished difference Result 93 states and 120 transitions. [2022-02-20 23:51:41,351 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 120 transitions. [2022-02-20 23:51:41,351 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:41,351 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:41,352 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) Second operand 93 states. [2022-02-20 23:51:41,352 INFO L87 Difference]: Start difference. First operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) Second operand 93 states. [2022-02-20 23:51:41,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:41,353 INFO L93 Difference]: Finished difference Result 93 states and 120 transitions. [2022-02-20 23:51:41,354 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 120 transitions. [2022-02-20 23:51:41,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:41,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:41,354 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:41,354 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:41,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 71 states have (on average 1.3661971830985915) internal successors, (97), 77 states have internal predecessors, (97), 7 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (13), 10 states have call predecessors, (13), 7 states have call successors, (13) [2022-02-20 23:51:41,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 117 transitions. [2022-02-20 23:51:41,356 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 117 transitions. Word has length 24 [2022-02-20 23:51:41,356 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:41,356 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 117 transitions. [2022-02-20 23:51:41,356 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (4), 1 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:51:41,356 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 117 transitions. [2022-02-20 23:51:41,357 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:51:41,357 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:41,357 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:41,359 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:51:41,565 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:51:41,759 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:51:41,759 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:41,759 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:41,760 INFO L85 PathProgramCache]: Analyzing trace with hash 2918772, now seen corresponding path program 1 times [2022-02-20 23:51:41,760 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:41,760 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [681934263] [2022-02-20 23:51:41,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:41,760 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:41,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:41,761 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:51:41,763 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:51:41,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:41,820 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 28 conjunts are in the unsatisfiable core [2022-02-20 23:51:41,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:41,831 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:41,862 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:51:41,866 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:51:42,084 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:42,085 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:42,093 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:42,093 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:44,294 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:44,295 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:44,317 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:44,317 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:44,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {5003#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {5003#true} is VALID [2022-02-20 23:51:44,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {5003#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:44,364 INFO L272 TraceCheckUtils]: 2: Hoare triple {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {5003#true} is VALID [2022-02-20 23:51:44,365 INFO L290 TraceCheckUtils]: 3: Hoare triple {5003#true} ~size := #in~size; {5018#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:44,366 INFO L290 TraceCheckUtils]: 4: Hoare triple {5018#(= ldv_malloc_~size |ldv_malloc_#in~size|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:44,366 INFO L290 TraceCheckUtils]: 5: Hoare triple {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} assume true; {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:44,367 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {5029#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} is VALID [2022-02-20 23:51:44,367 INFO L290 TraceCheckUtils]: 7: Hoare triple {5029#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {5033#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,368 INFO L290 TraceCheckUtils]: 8: Hoare triple {5033#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,368 INFO L290 TraceCheckUtils]: 9: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,369 INFO L272 TraceCheckUtils]: 10: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:44,369 INFO L290 TraceCheckUtils]: 11: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:44,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:44,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:44,372 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,374 INFO L290 TraceCheckUtils]: 17: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,375 INFO L290 TraceCheckUtils]: 19: Hoare triple {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,375 INFO L272 TraceCheckUtils]: 20: Hoare triple {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:44,376 INFO L290 TraceCheckUtils]: 21: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:44,377 INFO L290 TraceCheckUtils]: 22: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:44,377 INFO L290 TraceCheckUtils]: 23: Hoare triple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:44,379 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,380 INFO L290 TraceCheckUtils]: 26: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:44,380 INFO L290 TraceCheckUtils]: 27: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)))); {5004#false} is VALID [2022-02-20 23:51:44,380 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 11 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:51:44,380 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:46,798 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:46,798 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [681934263] [2022-02-20 23:51:46,798 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [681934263] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:46,798 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1595492264] [2022-02-20 23:51:46,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:46,798 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:46,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:51:46,799 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:51:46,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Waiting until timeout for monitored process [2022-02-20 23:51:46,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:46,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 28 conjunts are in the unsatisfiable core [2022-02-20 23:51:46,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:46,902 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:46,924 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:51:46,929 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:51:47,080 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:47,081 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:47,090 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:47,090 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:47,253 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:47,255 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:51:47,264 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:47,265 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:51:47,295 INFO L290 TraceCheckUtils]: 0: Hoare triple {5003#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {5003#true} is VALID [2022-02-20 23:51:47,296 INFO L290 TraceCheckUtils]: 1: Hoare triple {5003#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:47,296 INFO L272 TraceCheckUtils]: 2: Hoare triple {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {5003#true} is VALID [2022-02-20 23:51:47,296 INFO L290 TraceCheckUtils]: 3: Hoare triple {5003#true} ~size := #in~size; {5018#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:47,297 INFO L290 TraceCheckUtils]: 4: Hoare triple {5018#(= ldv_malloc_~size |ldv_malloc_#in~size|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:47,298 INFO L290 TraceCheckUtils]: 5: Hoare triple {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} assume true; {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:47,299 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {5022#(and (= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|)) (= (select |#length| |ldv_malloc_#res.base|) |ldv_malloc_#in~size|) (= |ldv_malloc_#res.offset| (_ bv0 32)))} {5011#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #76#return; {5029#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} is VALID [2022-02-20 23:51:47,301 INFO L290 TraceCheckUtils]: 7: Hoare triple {5029#(and (= (select |#length| |ULTIMATE.start_entry_point_#t~ret38#1.base|) (_ bv40 32)) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)) (= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {5033#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,302 INFO L290 TraceCheckUtils]: 8: Hoare triple {5033#(and (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,302 INFO L290 TraceCheckUtils]: 9: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,303 INFO L272 TraceCheckUtils]: 10: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:47,303 INFO L290 TraceCheckUtils]: 11: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:47,304 INFO L290 TraceCheckUtils]: 12: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:47,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:47,306 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,308 INFO L290 TraceCheckUtils]: 17: Hoare triple {5058#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,308 INFO L290 TraceCheckUtils]: 18: Hoare triple {5037#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,309 INFO L272 TraceCheckUtils]: 20: Hoare triple {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:47,310 INFO L290 TraceCheckUtils]: 21: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:47,311 INFO L290 TraceCheckUtils]: 22: Hoare triple {5044#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:47,311 INFO L290 TraceCheckUtils]: 23: Hoare triple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} assume true; {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:51:47,313 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {5051#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (exists ((v_ArrVal_85 (_ BitVec 32))) (= |#length| (store |old(#length)| |ldv_malloc_#res.base| v_ArrVal_85))) (= (bvneg (select |old(#valid)| |ldv_malloc_#res.base|)) (_ bv0 1))))} {5071#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} #78#return; {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,313 INFO L290 TraceCheckUtils]: 25: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} is VALID [2022-02-20 23:51:47,314 INFO L290 TraceCheckUtils]: 27: Hoare triple {5090#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv40 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)))); {5004#false} is VALID [2022-02-20 23:51:47,314 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 11 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:51:47,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:49,594 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1595492264] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:49,594 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:49,594 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 12 [2022-02-20 23:51:49,594 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [247457543] [2022-02-20 23:51:49,594 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:49,595 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 28 [2022-02-20 23:51:49,595 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:49,595 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:51:49,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:49,619 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:51:49,619 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:49,619 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:51:49,619 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=172, Unknown=1, NotChecked=0, Total=210 [2022-02-20 23:51:49,619 INFO L87 Difference]: Start difference. First operand 90 states and 117 transitions. Second operand has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:51:50,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:50,950 INFO L93 Difference]: Finished difference Result 141 states and 173 transitions. [2022-02-20 23:51:50,950 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:51:50,951 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 28 [2022-02-20 23:51:50,951 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:50,951 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:51:50,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 120 transitions. [2022-02-20 23:51:50,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:51:50,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 120 transitions. [2022-02-20 23:51:50,953 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 120 transitions. [2022-02-20 23:51:51,065 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:51,068 INFO L225 Difference]: With dead ends: 141 [2022-02-20 23:51:51,068 INFO L226 Difference]: Without dead ends: 141 [2022-02-20 23:51:51,069 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 45 SyntacticMatches, 4 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 6.6s TimeCoverageRelationStatistics Valid=46, Invalid=225, Unknown=1, NotChecked=0, Total=272 [2022-02-20 23:51:51,069 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 76 mSDsluCounter, 216 mSDsCounter, 0 mSdLazyCounter, 271 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 334 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 271 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 40 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:51,069 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 247 Invalid, 334 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 271 Invalid, 0 Unknown, 40 Unchecked, 0.5s Time] [2022-02-20 23:51:51,070 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states. [2022-02-20 23:51:51,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 94. [2022-02-20 23:51:51,072 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:51,072 INFO L82 GeneralOperation]: Start isEquivalent. First operand 141 states. Second operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) [2022-02-20 23:51:51,072 INFO L74 IsIncluded]: Start isIncluded. First operand 141 states. Second operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) [2022-02-20 23:51:51,072 INFO L87 Difference]: Start difference. First operand 141 states. Second operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) [2022-02-20 23:51:51,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:51,075 INFO L93 Difference]: Finished difference Result 141 states and 173 transitions. [2022-02-20 23:51:51,075 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 173 transitions. [2022-02-20 23:51:51,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:51,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:51,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) Second operand 141 states. [2022-02-20 23:51:51,076 INFO L87 Difference]: Start difference. First operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) Second operand 141 states. [2022-02-20 23:51:51,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:51,078 INFO L93 Difference]: Finished difference Result 141 states and 173 transitions. [2022-02-20 23:51:51,078 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 173 transitions. [2022-02-20 23:51:51,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:51,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:51,078 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:51,078 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:51,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 76 states have (on average 1.4078947368421053) internal successors, (107), 82 states have internal predecessors, (107), 6 states have call successors, (6), 2 states have call predecessors, (6), 3 states have return successors, (11), 9 states have call predecessors, (11), 6 states have call successors, (11) [2022-02-20 23:51:51,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 124 transitions. [2022-02-20 23:51:51,083 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 124 transitions. Word has length 28 [2022-02-20 23:51:51,083 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:51,083 INFO L470 AbstractCegarLoop]: Abstraction has 94 states and 124 transitions. [2022-02-20 23:51:51,083 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 11 states have (on average 1.7272727272727273) internal successors, (19), 12 states have internal predecessors, (19), 3 states have call successors, (3), 2 states have call predecessors, (3), 2 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-02-20 23:51:51,084 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 124 transitions. [2022-02-20 23:51:51,084 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:51:51,084 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:51,084 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:51,088 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:51:51,296 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Ended with exit code 0 [2022-02-20 23:51:51,491 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:51:51,491 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:51:51,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:51,492 INFO L85 PathProgramCache]: Analyzing trace with hash 252730558, now seen corresponding path program 1 times [2022-02-20 23:51:51,492 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:51,492 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1576146845] [2022-02-20 23:51:51,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:51,492 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:51,492 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:51,493 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:51:51,494 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2022-02-20 23:51:51,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:51,538 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:51:51,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:51,548 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:51,819 INFO L290 TraceCheckUtils]: 0: Hoare triple {5727#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {5727#true} is VALID [2022-02-20 23:51:51,819 INFO L290 TraceCheckUtils]: 1: Hoare triple {5727#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {5727#true} is VALID [2022-02-20 23:51:51,819 INFO L272 TraceCheckUtils]: 2: Hoare triple {5727#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {5727#true} is VALID [2022-02-20 23:51:51,819 INFO L290 TraceCheckUtils]: 3: Hoare triple {5727#true} ~size := #in~size; {5727#true} is VALID [2022-02-20 23:51:51,820 INFO L290 TraceCheckUtils]: 4: Hoare triple {5727#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5744#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:51:51,820 INFO L290 TraceCheckUtils]: 5: Hoare triple {5744#(= |ldv_malloc_#res.offset| (_ bv0 32))} assume true; {5744#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:51:51,820 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {5744#(= |ldv_malloc_#res.offset| (_ bv0 32))} {5727#true} #76#return; {5751#(= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:51:51,821 INFO L290 TraceCheckUtils]: 7: Hoare triple {5751#(= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {5755#(= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:51:51,821 INFO L290 TraceCheckUtils]: 8: Hoare triple {5755#(= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,821 INFO L290 TraceCheckUtils]: 9: Hoare triple {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,822 INFO L272 TraceCheckUtils]: 10: Hoare triple {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5727#true} is VALID [2022-02-20 23:51:51,822 INFO L290 TraceCheckUtils]: 11: Hoare triple {5727#true} ~size := #in~size; {5727#true} is VALID [2022-02-20 23:51:51,822 INFO L290 TraceCheckUtils]: 12: Hoare triple {5727#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5727#true} is VALID [2022-02-20 23:51:51,822 INFO L290 TraceCheckUtils]: 13: Hoare triple {5727#true} assume true; {5727#true} is VALID [2022-02-20 23:51:51,822 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5727#true} {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,823 INFO L290 TraceCheckUtils]: 15: Hoare triple {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,823 INFO L290 TraceCheckUtils]: 16: Hoare triple {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,824 INFO L290 TraceCheckUtils]: 17: Hoare triple {5759#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {5787#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,824 INFO L290 TraceCheckUtils]: 18: Hoare triple {5787#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,825 INFO L290 TraceCheckUtils]: 19: Hoare triple {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,826 INFO L272 TraceCheckUtils]: 20: Hoare triple {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5798#(= |#length| |old(#length)|)} is VALID [2022-02-20 23:51:51,826 INFO L290 TraceCheckUtils]: 21: Hoare triple {5798#(= |#length| |old(#length)|)} ~size := #in~size; {5798#(= |#length| |old(#length)|)} is VALID [2022-02-20 23:51:51,826 INFO L290 TraceCheckUtils]: 22: Hoare triple {5798#(= |#length| |old(#length)|)} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {5798#(= |#length| |old(#length)|)} is VALID [2022-02-20 23:51:51,827 INFO L290 TraceCheckUtils]: 23: Hoare triple {5798#(= |#length| |old(#length)|)} assume true; {5798#(= |#length| |old(#length)|)} is VALID [2022-02-20 23:51:51,828 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {5798#(= |#length| |old(#length)|)} {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,828 INFO L290 TraceCheckUtils]: 25: Hoare triple {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,829 INFO L290 TraceCheckUtils]: 26: Hoare triple {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,829 INFO L290 TraceCheckUtils]: 27: Hoare triple {5791#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {5820#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,829 INFO L290 TraceCheckUtils]: 28: Hoare triple {5820#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {5820#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:51:51,830 INFO L290 TraceCheckUtils]: 29: Hoare triple {5820#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {5728#false} is VALID [2022-02-20 23:51:51,830 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 8 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:51,830 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:52,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 11 treesize of output 9 [2022-02-20 23:51:52,769 INFO L290 TraceCheckUtils]: 29: Hoare triple {5827#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))), #length[entry_point_~array~0#1.base]) && ~bvule32(~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), ~bvadd32(4bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1))))) && ~bvule32(0bv32, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)))); {5728#false} is VALID [2022-02-20 23:51:52,769 INFO L290 TraceCheckUtils]: 28: Hoare triple {5827#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)))} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {5827#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)))} is VALID [2022-02-20 23:51:53,030 INFO L290 TraceCheckUtils]: 27: Hoare triple {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {5827#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|) (_ bv4 32)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)))} is VALID [2022-02-20 23:51:53,031 INFO L290 TraceCheckUtils]: 26: Hoare triple {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is VALID [2022-02-20 23:51:53,031 INFO L290 TraceCheckUtils]: 25: Hoare triple {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is VALID [2022-02-20 23:51:55,039 WARN L284 TraceCheckUtils]: 24: Hoare quadruple {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} #78#return; {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is UNKNOWN [2022-02-20 23:51:55,040 INFO L290 TraceCheckUtils]: 23: Hoare triple {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} assume true; {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} is VALID [2022-02-20 23:51:55,040 INFO L290 TraceCheckUtils]: 22: Hoare triple {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} is VALID [2022-02-20 23:51:55,041 INFO L290 TraceCheckUtils]: 21: Hoare triple {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} ~size := #in~size; {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} is VALID [2022-02-20 23:51:55,042 INFO L272 TraceCheckUtils]: 20: Hoare triple {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5847#(forall ((|v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ BitVec 32)) (|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16| (_ BitVec 32))) (or (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |old(#length)| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|))) (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (select |#length| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_16|)) (not (bvule (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (_ bv4294967292 32) (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32))) (bvadd |v_ULTIMATE.start_entry_point_~array~0#1.offset_BEFORE_CALL_9| (bvmul |v_ULTIMATE.start_entry_point_~i~0#1_BEFORE_CALL_12| (_ bv4 32)))))))} is VALID [2022-02-20 23:51:55,042 INFO L290 TraceCheckUtils]: 19: Hoare triple {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is VALID [2022-02-20 23:51:55,527 INFO L290 TraceCheckUtils]: 18: Hoare triple {5863#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {5834#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is VALID [2022-02-20 23:51:55,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {5863#(and (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (select |#length| |ULTIMATE.start_entry_point_~array~0#1.base|)) (bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))))} is VALID [2022-02-20 23:51:55,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} is VALID [2022-02-20 23:51:55,528 INFO L290 TraceCheckUtils]: 15: Hoare triple {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} is VALID [2022-02-20 23:51:55,529 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {5727#true} {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} #78#return; {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} is VALID [2022-02-20 23:51:55,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {5727#true} assume true; {5727#true} is VALID [2022-02-20 23:51:55,529 INFO L290 TraceCheckUtils]: 12: Hoare triple {5727#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5727#true} is VALID [2022-02-20 23:51:55,529 INFO L290 TraceCheckUtils]: 11: Hoare triple {5727#true} ~size := #in~size; {5727#true} is VALID [2022-02-20 23:51:55,529 INFO L272 TraceCheckUtils]: 10: Hoare triple {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {5727#true} is VALID [2022-02-20 23:51:55,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} is VALID [2022-02-20 23:51:55,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {5895#(bvule |ULTIMATE.start_entry_point_~array~0#1.offset| (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {5867#(bvule (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|)))} is VALID [2022-02-20 23:51:55,530 INFO L290 TraceCheckUtils]: 7: Hoare triple {5899#(bvule |ULTIMATE.start_entry_point_#t~ret38#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_entry_point_#t~ret38#1.offset|))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {5895#(bvule |ULTIMATE.start_entry_point_~array~0#1.offset| (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv4 32)))} is VALID [2022-02-20 23:51:55,531 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {5906#(bvule |ldv_malloc_#res.offset| (bvadd (_ bv4 32) |ldv_malloc_#res.offset|))} {5727#true} #76#return; {5899#(bvule |ULTIMATE.start_entry_point_#t~ret38#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_entry_point_#t~ret38#1.offset|))} is VALID [2022-02-20 23:51:55,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {5906#(bvule |ldv_malloc_#res.offset| (bvadd (_ bv4 32) |ldv_malloc_#res.offset|))} assume true; {5906#(bvule |ldv_malloc_#res.offset| (bvadd (_ bv4 32) |ldv_malloc_#res.offset|))} is VALID [2022-02-20 23:51:55,532 INFO L290 TraceCheckUtils]: 4: Hoare triple {5727#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {5906#(bvule |ldv_malloc_#res.offset| (bvadd (_ bv4 32) |ldv_malloc_#res.offset|))} is VALID [2022-02-20 23:51:55,532 INFO L290 TraceCheckUtils]: 3: Hoare triple {5727#true} ~size := #in~size; {5727#true} is VALID [2022-02-20 23:51:55,532 INFO L272 TraceCheckUtils]: 2: Hoare triple {5727#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {5727#true} is VALID [2022-02-20 23:51:55,532 INFO L290 TraceCheckUtils]: 1: Hoare triple {5727#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {5727#true} is VALID [2022-02-20 23:51:55,532 INFO L290 TraceCheckUtils]: 0: Hoare triple {5727#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {5727#true} is VALID [2022-02-20 23:51:55,532 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 8 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:51:55,532 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:55,532 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1576146845] [2022-02-20 23:51:55,532 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1576146845] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:51:55,533 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:55,533 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 17 [2022-02-20 23:51:55,533 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1017112300] [2022-02-20 23:51:55,533 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:55,533 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) Word has length 30 [2022-02-20 23:51:55,533 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:55,533 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-02-20 23:52:04,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 48 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-02-20 23:52:04,266 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:52:04,266 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:52:04,266 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:52:04,266 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=253, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:52:04,266 INFO L87 Difference]: Start difference. First operand 94 states and 124 transitions. Second operand has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-02-20 23:52:08,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:08,510 INFO L93 Difference]: Finished difference Result 156 states and 178 transitions. [2022-02-20 23:52:08,510 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:52:08,510 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) Word has length 30 [2022-02-20 23:52:08,511 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:52:08,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-02-20 23:52:08,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 146 transitions. [2022-02-20 23:52:08,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-02-20 23:52:08,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 146 transitions. [2022-02-20 23:52:08,513 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 146 transitions. [2022-02-20 23:52:10,513 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:52:10,515 INFO L225 Difference]: With dead ends: 156 [2022-02-20 23:52:10,515 INFO L226 Difference]: Without dead ends: 156 [2022-02-20 23:52:10,515 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=160, Invalid=652, Unknown=0, NotChecked=0, Total=812 [2022-02-20 23:52:10,516 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 279 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 365 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 279 SdHoareTripleChecker+Valid, 295 SdHoareTripleChecker+Invalid, 444 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 365 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 44 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:52:10,516 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [279 Valid, 295 Invalid, 444 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 365 Invalid, 0 Unknown, 44 Unchecked, 1.3s Time] [2022-02-20 23:52:10,516 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-02-20 23:52:10,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 73. [2022-02-20 23:52:10,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:52:10,519 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:10,519 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:10,519 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:10,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:10,521 INFO L93 Difference]: Finished difference Result 156 states and 178 transitions. [2022-02-20 23:52:10,522 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 178 transitions. [2022-02-20 23:52:10,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:52:10,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:52:10,522 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) Second operand 156 states. [2022-02-20 23:52:10,523 INFO L87 Difference]: Start difference. First operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) Second operand 156 states. [2022-02-20 23:52:10,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:10,526 INFO L93 Difference]: Finished difference Result 156 states and 178 transitions. [2022-02-20 23:52:10,526 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 178 transitions. [2022-02-20 23:52:10,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:52:10,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:52:10,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:52:10,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:52:10,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 57 states have (on average 1.263157894736842) internal successors, (72), 62 states have internal predecessors, (72), 5 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:10,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 86 transitions. [2022-02-20 23:52:10,529 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 86 transitions. Word has length 30 [2022-02-20 23:52:10,529 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:52:10,529 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 86 transitions. [2022-02-20 23:52:10,529 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 2.411764705882353) internal successors, (41), 16 states have internal predecessors, (41), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-02-20 23:52:10,529 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 86 transitions. [2022-02-20 23:52:10,532 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:52:10,532 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:52:10,532 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:52:10,541 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:52:10,741 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:52:10,742 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr4ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:52:10,742 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:52:10,742 INFO L85 PathProgramCache]: Analyzing trace with hash -755287307, now seen corresponding path program 1 times [2022-02-20 23:52:10,742 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:52:10,742 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [948346047] [2022-02-20 23:52:10,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:52:10,742 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:52:10,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:52:10,743 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:52:10,744 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:52:10,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:52:10,800 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:52:10,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:52:10,808 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:52:10,925 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 15 treesize of output 11 [2022-02-20 23:52:11,146 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:52:11,161 INFO L290 TraceCheckUtils]: 0: Hoare triple {6485#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {6485#true} is VALID [2022-02-20 23:52:11,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {6485#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {6485#true} is VALID [2022-02-20 23:52:11,161 INFO L272 TraceCheckUtils]: 2: Hoare triple {6485#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {6485#true} is VALID [2022-02-20 23:52:11,161 INFO L290 TraceCheckUtils]: 3: Hoare triple {6485#true} ~size := #in~size; {6485#true} is VALID [2022-02-20 23:52:11,162 INFO L290 TraceCheckUtils]: 4: Hoare triple {6485#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} assume true; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,163 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} {6485#true} #76#return; {6509#(= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,163 INFO L290 TraceCheckUtils]: 7: Hoare triple {6509#(= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {6513#(= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,163 INFO L290 TraceCheckUtils]: 8: Hoare triple {6513#(= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {6517#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,164 INFO L290 TraceCheckUtils]: 9: Hoare triple {6517#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {6517#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,164 INFO L272 TraceCheckUtils]: 10: Hoare triple {6517#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {6485#true} is VALID [2022-02-20 23:52:11,164 INFO L290 TraceCheckUtils]: 11: Hoare triple {6485#true} ~size := #in~size; {6485#true} is VALID [2022-02-20 23:52:11,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {6485#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,165 INFO L290 TraceCheckUtils]: 13: Hoare triple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} assume true; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,165 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} {6517#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {6536#(and (= |ULTIMATE.start_entry_point_#t~ret40#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,166 INFO L290 TraceCheckUtils]: 15: Hoare triple {6536#(and (= |ULTIMATE.start_entry_point_#t~ret40#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {6540#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,166 INFO L290 TraceCheckUtils]: 16: Hoare triple {6540#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {6540#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {6540#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {6547#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {6547#(and (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,171 INFO L272 TraceCheckUtils]: 20: Hoare triple {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} is VALID [2022-02-20 23:52:11,172 INFO L290 TraceCheckUtils]: 21: Hoare triple {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} ~size := #in~size; {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} is VALID [2022-02-20 23:52:11,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} is VALID [2022-02-20 23:52:11,172 INFO L290 TraceCheckUtils]: 23: Hoare triple {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} assume true; {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} is VALID [2022-02-20 23:52:11,173 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {6558#(exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17| (_ BitVec 32))) (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_17|) (_ bv0 32))))} {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,174 INFO L290 TraceCheckUtils]: 25: Hoare triple {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,174 INFO L290 TraceCheckUtils]: 26: Hoare triple {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,175 INFO L290 TraceCheckUtils]: 27: Hoare triple {6551#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {6580#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {6580#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {6580#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:11,178 INFO L290 TraceCheckUtils]: 29: Hoare triple {6580#(and (= (_ bv0 32) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|)) (= (bvadd |ULTIMATE.start_entry_point_~j~0#1| (_ bv1 32)) (_ bv1 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} SUMMARY for call entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset := read~$Pointer$(entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), 4bv32); srcloc: L774 {6587#(= |ULTIMATE.start_entry_point_#t~mem42#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,178 INFO L290 TraceCheckUtils]: 30: Hoare triple {6587#(= |ULTIMATE.start_entry_point_#t~mem42#1.offset| (_ bv0 32))} assume !(0bv32 == entry_point_#t~mem42#1.offset); {6486#false} is VALID [2022-02-20 23:52:11,178 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 8 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:52:11,179 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:52:11,399 INFO L290 TraceCheckUtils]: 30: Hoare triple {6587#(= |ULTIMATE.start_entry_point_#t~mem42#1.offset| (_ bv0 32))} assume !(0bv32 == entry_point_#t~mem42#1.offset); {6486#false} is VALID [2022-02-20 23:52:11,400 INFO L290 TraceCheckUtils]: 29: Hoare triple {6594#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|))) (_ bv0 32))} SUMMARY for call entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset := read~$Pointer$(entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~j~0#1)), 4bv32); srcloc: L774 {6587#(= |ULTIMATE.start_entry_point_#t~mem42#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:11,400 INFO L290 TraceCheckUtils]: 28: Hoare triple {6594#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|))) (_ bv0 32))} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {6594#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:12,561 INFO L290 TraceCheckUtils]: 27: Hoare triple {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {6594#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~j~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:12,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:12,562 INFO L290 TraceCheckUtils]: 25: Hoare triple {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:12,563 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {6485#true} {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} #78#return; {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:12,563 INFO L290 TraceCheckUtils]: 23: Hoare triple {6485#true} assume true; {6485#true} is VALID [2022-02-20 23:52:12,563 INFO L290 TraceCheckUtils]: 22: Hoare triple {6485#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {6485#true} is VALID [2022-02-20 23:52:12,563 INFO L290 TraceCheckUtils]: 21: Hoare triple {6485#true} ~size := #in~size; {6485#true} is VALID [2022-02-20 23:52:12,563 INFO L272 TraceCheckUtils]: 20: Hoare triple {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {6485#true} is VALID [2022-02-20 23:52:12,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:13,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {6629#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {6601#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:13,331 INFO L290 TraceCheckUtils]: 17: Hoare triple {6633#(= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|)} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {6629#(= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) (_ bv0 32))} is VALID [2022-02-20 23:52:13,331 INFO L290 TraceCheckUtils]: 16: Hoare triple {6633#(= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|)} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {6633#(= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|)} is VALID [2022-02-20 23:52:13,332 INFO L290 TraceCheckUtils]: 15: Hoare triple {6640#(= |ULTIMATE.start_entry_point_#t~ret40#1.offset| (_ bv0 32))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {6633#(= (_ bv0 32) |ULTIMATE.start_entry_point_~p~0#1.offset|)} is VALID [2022-02-20 23:52:13,332 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} {6485#true} #78#return; {6640#(= |ULTIMATE.start_entry_point_#t~ret40#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} assume true; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {6485#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {6502#(= |ldv_malloc_#res.offset| (_ bv0 32))} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 11: Hoare triple {6485#true} ~size := #in~size; {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L272 TraceCheckUtils]: 10: Hoare triple {6485#true} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 9: Hoare triple {6485#true} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 8: Hoare triple {6485#true} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 7: Hoare triple {6485#true} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {6485#true} {6485#true} #76#return; {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 5: Hoare triple {6485#true} assume true; {6485#true} is VALID [2022-02-20 23:52:13,333 INFO L290 TraceCheckUtils]: 4: Hoare triple {6485#true} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {6485#true} is VALID [2022-02-20 23:52:13,334 INFO L290 TraceCheckUtils]: 3: Hoare triple {6485#true} ~size := #in~size; {6485#true} is VALID [2022-02-20 23:52:13,334 INFO L272 TraceCheckUtils]: 2: Hoare triple {6485#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {6485#true} is VALID [2022-02-20 23:52:13,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {6485#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {6485#true} is VALID [2022-02-20 23:52:13,334 INFO L290 TraceCheckUtils]: 0: Hoare triple {6485#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {6485#true} is VALID [2022-02-20 23:52:13,334 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 23:52:13,334 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:52:13,334 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [948346047] [2022-02-20 23:52:13,334 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [948346047] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:52:13,334 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:52:13,334 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 17 [2022-02-20 23:52:13,334 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [466369111] [2022-02-20 23:52:13,334 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:52:13,335 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 31 [2022-02-20 23:52:13,335 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:52:13,335 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:52:15,367 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:52:15,367 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:52:15,368 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:52:15,368 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:52:15,368 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=256, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:52:15,368 INFO L87 Difference]: Start difference. First operand 73 states and 86 transitions. Second operand has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:52:21,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:21,050 INFO L93 Difference]: Finished difference Result 113 states and 124 transitions. [2022-02-20 23:52:21,050 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-02-20 23:52:21,050 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) Word has length 31 [2022-02-20 23:52:21,050 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:52:21,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:52:21,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 101 transitions. [2022-02-20 23:52:21,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:52:21,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 101 transitions. [2022-02-20 23:52:21,052 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 101 transitions. [2022-02-20 23:52:25,187 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 99 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:52:25,196 INFO L225 Difference]: With dead ends: 113 [2022-02-20 23:52:25,197 INFO L226 Difference]: Without dead ends: 113 [2022-02-20 23:52:25,197 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 46 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 255 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=192, Invalid=930, Unknown=0, NotChecked=0, Total=1122 [2022-02-20 23:52:25,197 INFO L933 BasicCegarLoop]: 26 mSDtfsCounter, 207 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 303 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 208 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 361 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 303 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 33 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:52:25,198 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [208 Valid, 245 Invalid, 361 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 303 Invalid, 0 Unknown, 33 Unchecked, 0.5s Time] [2022-02-20 23:52:25,198 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-02-20 23:52:25,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 80. [2022-02-20 23:52:25,199 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:52:25,200 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:25,200 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:25,200 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:25,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:25,202 INFO L93 Difference]: Finished difference Result 113 states and 124 transitions. [2022-02-20 23:52:25,202 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 124 transitions. [2022-02-20 23:52:25,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:52:25,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:52:25,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) Second operand 113 states. [2022-02-20 23:52:25,203 INFO L87 Difference]: Start difference. First operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) Second operand 113 states. [2022-02-20 23:52:25,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:52:25,204 INFO L93 Difference]: Finished difference Result 113 states and 124 transitions. [2022-02-20 23:52:25,204 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 124 transitions. [2022-02-20 23:52:25,204 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:52:25,204 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:52:25,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:52:25,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:52:25,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 62 states have (on average 1.2580645161290323) internal successors, (78), 68 states have internal predecessors, (78), 5 states have call successors, (5), 3 states have call predecessors, (5), 5 states have return successors, (9), 8 states have call predecessors, (9), 5 states have call successors, (9) [2022-02-20 23:52:25,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 92 transitions. [2022-02-20 23:52:25,206 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 92 transitions. Word has length 31 [2022-02-20 23:52:25,206 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:52:25,206 INFO L470 AbstractCegarLoop]: Abstraction has 80 states and 92 transitions. [2022-02-20 23:52:25,206 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 2.235294117647059) internal successors, (38), 15 states have internal predecessors, (38), 4 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (6), 6 states have call predecessors, (6), 4 states have call successors, (6) [2022-02-20 23:52:25,206 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 92 transitions. [2022-02-20 23:52:25,207 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:52:25,207 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:52:25,207 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:52:25,218 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:52:25,413 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:52:25,414 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr5ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 7 more)] === [2022-02-20 23:52:25,414 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:52:25,414 INFO L85 PathProgramCache]: Analyzing trace with hash -1939069955, now seen corresponding path program 1 times [2022-02-20 23:52:25,414 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:52:25,414 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1798192388] [2022-02-20 23:52:25,414 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:52:25,415 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:52:25,415 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:52:25,415 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:52:25,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2022-02-20 23:52:25,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:52:25,474 INFO L263 TraceCheckSpWp]: Trace formula consists of 102 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:52:25,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:52:25,491 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:52:26,029 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 15 treesize of output 11 [2022-02-20 23:52:26,639 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:52:26,708 INFO L290 TraceCheckUtils]: 0: Hoare triple {7139#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset := 1bv32, 0bv32;call #Ultimate.allocInit(8bv32, 1bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, 4bv32);call write~init~$Pointer$(~#ldv_global_msg_list~0.base, ~#ldv_global_msg_list~0.offset, ~#ldv_global_msg_list~0.base, ~bvadd32(4bv32, ~#ldv_global_msg_list~0.offset), 4bv32); {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:52:26,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;assume { :begin_inline_entry_point } true;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset, entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset, entry_point_#t~post39#1, entry_point_#t~mem42#1.base, entry_point_#t~mem42#1.offset, entry_point_#t~post41#1, entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~i~0#1, entry_point_~j~0#1, entry_point_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset;entry_point_~len~0#1 := 10bv32; {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:52:26,709 INFO L272 TraceCheckUtils]: 2: Hoare triple {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:52:26,710 INFO L290 TraceCheckUtils]: 3: Hoare triple {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} ~size := #in~size; {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} is VALID [2022-02-20 23:52:26,712 INFO L290 TraceCheckUtils]: 4: Hoare triple {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {7157#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,715 INFO L290 TraceCheckUtils]: 5: Hoare triple {7157#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ldv_malloc_#res.offset| (_ bv0 32)))} assume true; {7157#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ldv_malloc_#res.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,716 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {7157#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ldv_malloc_#res.offset| (_ bv0 32)))} {7144#(bvult (_ bv0 32) |#StackHeapBarrier|)} #76#return; {7164#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {7164#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_#t~ret38#1.offset| (_ bv0 32)))} entry_point_~array~0#1.base, entry_point_~array~0#1.offset := entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset;havoc entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset; {7168#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,721 INFO L290 TraceCheckUtils]: 8: Hoare triple {7168#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume entry_point_~array~0#1.base != 0bv32 || entry_point_~array~0#1.offset != 0bv32;havoc entry_point_~p~0#1.base, entry_point_~p~0#1.offset;entry_point_~i~0#1 := 0bv32;havoc entry_point_~j~0#1; {7172#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,723 INFO L290 TraceCheckUtils]: 9: Hoare triple {7172#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {7172#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,724 INFO L272 TraceCheckUtils]: 10: Hoare triple {7172#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {7179#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32)))))} is VALID [2022-02-20 23:52:26,727 INFO L290 TraceCheckUtils]: 11: Hoare triple {7179#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32)))))} ~size := #in~size; {7179#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32)))))} is VALID [2022-02-20 23:52:26,730 INFO L290 TraceCheckUtils]: 12: Hoare triple {7179#(exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32)))))} assume 0bv32 != #t~nondet11;havoc #t~nondet11;call #t~malloc12.base, #t~malloc12.offset := #Ultimate.allocOnHeap(~size);#res.base, #res.offset := #t~malloc12.base, #t~malloc12.offset;havoc #t~malloc12.base, #t~malloc12.offset; {7186#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {7186#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} assume true; {7186#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,733 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {7186#(and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} {7172#(and (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {7193#(and (bvult |ULTIMATE.start_entry_point_#t~ret40#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {7193#(and (bvult |ULTIMATE.start_entry_point_#t~ret40#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {7197#(and (bvult |ULTIMATE.start_entry_point_~p~0#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {7197#(and (bvult |ULTIMATE.start_entry_point_~p~0#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {7197#(and (bvult |ULTIMATE.start_entry_point_~p~0#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {7197#(and (bvult |ULTIMATE.start_entry_point_~p~0#1.base| |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(entry_point_~p~0#1.base, entry_point_~p~0#1.offset, entry_point_~array~0#1.base, ~bvadd32(entry_point_~array~0#1.offset, ~bvmul32(4bv32, entry_point_~i~0#1)), 4bv32); srcloc: L770 {7204#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {7204#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_#t~post39#1 := entry_point_~i~0#1;entry_point_~i~0#1 := ~bvadd32(1bv32, entry_point_#t~post39#1);havoc entry_point_#t~post39#1; {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,760 INFO L290 TraceCheckUtils]: 19: Hoare triple {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,762 INFO L272 TraceCheckUtils]: 20: Hoare triple {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,766 INFO L290 TraceCheckUtils]: 21: Hoare triple {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} ~size := #in~size; {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} assume true; {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} is VALID [2022-02-20 23:52:26,787 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {7215#(and (exists ((|v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19| (_ BitVec 32))) (bvult (select (select |#memory_$Pointer$.base| |v_ULTIMATE.start_entry_point_~array~0#1.base_BEFORE_CALL_19|) (_ bv0 32)) |#StackHeapBarrier|)) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))))} {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} #78#return; {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~p~0#1.base, entry_point_~p~0#1.offset := entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset;havoc entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset; {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,795 INFO L290 TraceCheckUtils]: 26: Hoare triple {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,798 INFO L290 TraceCheckUtils]: 27: Hoare triple {7208#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_entry_point_~i~0#1|) (_ bv0 32)) (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) (bvadd (_ bv4294967292 32) |ULTIMATE.start_entry_point_~array~0#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_entry_point_~i~0#1|))) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {7237#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~j~0#1| (_ bv0 32)))} is VALID [2022-02-20 23:52:26,801 INFO L290 TraceCheckUtils]: 28: Hoare triple {7237#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~j~0#1| (_ bv0 32)))} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {7237#(and (bvult (select (select |#memory_$Pointer$.base| |ULTIMATE.start_entry_point_~array~0#1.base|) |ULTIMATE.start_entry_point_~array~0#1.offset|) |#StackHeapBarrier|) (exists ((|ldv_malloc_#res.base| (_ BitVec 32))) (and (bvult |ldv_malloc_#res.base| |#StackHeapBarrier|) (not (= |ldv_malloc_#res.base| (_ bv0 32))))) (= |ULTIMATE.start_entry_point_~array~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_entry_point_~j~0#1| (_ bv0 32)))} is VALID