./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/ldv-memsafety/memleaks_test18_1.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_1.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 12544117846b274bd1cb12a6694f8fda1d77f0b1327b2e9a353cfe44563b100a --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:51:12,989 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:51:12,991 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:51:13,023 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:51:13,023 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:51:13,026 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:51:13,027 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:51:13,029 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:51:13,031 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:51:13,034 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:51:13,034 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:51:13,035 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:51:13,036 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:51:13,037 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:51:13,038 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:51:13,039 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:51:13,041 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:51:13,042 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:51:13,043 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:51:13,045 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:51:13,046 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:51:13,047 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:51:13,048 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:51:13,049 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:51:13,052 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:51:13,052 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:51:13,052 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:51:13,053 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:51:13,054 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:51:13,054 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:51:13,055 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:51:13,055 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:51:13,056 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:51:13,057 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:51:13,058 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:51:13,058 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:51:13,058 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:51:13,059 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:51:13,059 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:51:13,060 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:51:13,060 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:51:13,061 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:13,087 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:51:13,087 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:51:13,088 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:51:13,088 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:51:13,089 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:51:13,089 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:51:13,089 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:51:13,089 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:51:13,090 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:51:13,090 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:51:13,090 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:51:13,090 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:51:13,091 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:51:13,092 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:51:13,092 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:51:13,093 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:13,093 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:51:13,093 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:51:13,093 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:51:13,093 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:51:13,093 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 -> 12544117846b274bd1cb12a6694f8fda1d77f0b1327b2e9a353cfe44563b100a [2022-02-20 23:51:13,285 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:51:13,312 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:51:13,314 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:51:13,315 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:51:13,316 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:51:13,317 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-memsafety/memleaks_test18_1.i [2022-02-20 23:51:13,370 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a52d83080/22bacb24d69d4cdbad37d2f9b8695d77/FLAGc07b06fd8 [2022-02-20 23:51:13,778 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:51:13,779 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-memsafety/memleaks_test18_1.i [2022-02-20 23:51:13,801 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a52d83080/22bacb24d69d4cdbad37d2f9b8695d77/FLAGc07b06fd8 [2022-02-20 23:51:13,812 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a52d83080/22bacb24d69d4cdbad37d2f9b8695d77 [2022-02-20 23:51:13,814 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:51:13,815 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:51:13,827 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:13,827 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:51:13,830 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:51:13,830 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:13" (1/1) ... [2022-02-20 23:51:13,831 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@454e3e5a 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,831 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:13" (1/1) ... [2022-02-20 23:51:13,836 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:51:13,875 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:14,104 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:14,115 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:14,116 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@200d2dbd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:14, skipping insertion in model container [2022-02-20 23:51:14,116 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:14,116 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:51:14,118 INFO L158 Benchmark]: Toolchain (without parser) took 302.54ms. Allocated memory was 111.1MB in the beginning and 169.9MB in the end (delta: 58.7MB). Free memory was 80.5MB in the beginning and 137.5MB in the end (delta: -57.0MB). Peak memory consumption was 7.2MB. Max. memory is 16.1GB. [2022-02-20 23:51:14,119 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 111.1MB. Free memory is still 66.5MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:51:14,119 INFO L158 Benchmark]: CACSL2BoogieTranslator took 288.91ms. Allocated memory was 111.1MB in the beginning and 169.9MB in the end (delta: 58.7MB). Free memory was 80.5MB in the beginning and 137.5MB in the end (delta: -57.0MB). Peak memory consumption was 7.2MB. Max. memory is 16.1GB. [2022-02-20 23:51:14,120 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 111.1MB. Free memory is still 66.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 288.91ms. Allocated memory was 111.1MB in the beginning and 169.9MB in the end (delta: 58.7MB). Free memory was 80.5MB in the beginning and 137.5MB in the end (delta: -57.0MB). Peak memory consumption was 7.2MB. 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_1.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 12544117846b274bd1cb12a6694f8fda1d77f0b1327b2e9a353cfe44563b100a --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:51:15,732 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:51:15,734 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:51:15,765 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:51:15,766 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:51:15,768 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:51:15,769 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:51:15,773 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:51:15,774 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:51:15,778 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:51:15,779 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:51:15,780 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:51:15,780 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:51:15,782 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:51:15,783 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:51:15,787 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:51:15,787 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:51:15,788 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:51:15,790 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:51:15,793 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:51:15,794 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:51:15,795 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:51:15,796 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:51:15,797 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:51:15,802 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:51:15,802 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:51:15,802 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:51:15,803 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:51:15,804 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:51:15,804 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:51:15,805 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:51:15,805 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:51:15,806 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:51:15,807 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:51:15,809 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:51:15,809 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:51:15,810 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:51:15,810 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:51:15,810 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:51:15,811 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:51:15,811 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:51:15,812 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:15,839 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:51:15,839 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:51:15,840 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:51:15,840 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:51:15,841 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:51:15,841 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:51:15,842 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:51:15,842 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:51:15,843 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:51:15,843 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:51:15,843 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:51:15,844 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:51:15,845 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:51:15,846 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:51:15,846 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:51:15,846 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:51:15,853 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:15,853 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:51:15,853 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:51:15,853 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:51:15,853 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:15,854 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:51:15,854 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 -> 12544117846b274bd1cb12a6694f8fda1d77f0b1327b2e9a353cfe44563b100a [2022-02-20 23:51:16,128 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:51:16,160 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:51:16,161 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:51:16,162 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:51:16,163 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:51:16,164 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-memsafety/memleaks_test18_1.i [2022-02-20 23:51:16,216 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/069d622d0/8a58c7ef783242d19f5ec9b7a2a14940/FLAG45a1b5e2f [2022-02-20 23:51:16,615 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:51:16,616 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-memsafety/memleaks_test18_1.i [2022-02-20 23:51:16,627 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/069d622d0/8a58c7ef783242d19f5ec9b7a2a14940/FLAG45a1b5e2f [2022-02-20 23:51:16,637 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/069d622d0/8a58c7ef783242d19f5ec9b7a2a14940 [2022-02-20 23:51:16,639 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:51:16,639 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:51:16,640 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:16,641 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:51:16,643 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:51:16,644 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,644 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@49906342 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:16, skipping insertion in model container [2022-02-20 23:51:16,644 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:51:16" (1/1) ... [2022-02-20 23:51:16,649 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:51:16,680 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:16,966 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:16,990 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:51:16,995 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:51:17,054 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:17,066 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:51:17,131 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:51:17,186 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:51:17,186 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:17 WrapperNode [2022-02-20 23:51:17,186 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:51:17,187 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:51:17,187 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:51:17,187 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:51:17,191 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:17" (1/1) ... [2022-02-20 23:51:17,209 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:17" (1/1) ... [2022-02-20 23:51:17,234 INFO L137 Inliner]: procedures = 165, calls = 72, calls flagged for inlining = 21, calls inlined = 3, statements flattened = 49 [2022-02-20 23:51:17,237 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:51:17,238 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:51:17,238 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:51:17,238 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:51:17,243 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:17" (1/1) ... [2022-02-20 23:51:17,244 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:17" (1/1) ... [2022-02-20 23:51:17,259 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:17" (1/1) ... [2022-02-20 23:51:17,260 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:17" (1/1) ... [2022-02-20 23:51:17,265 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:17" (1/1) ... [2022-02-20 23:51:17,271 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:17" (1/1) ... [2022-02-20 23:51:17,273 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:17" (1/1) ... [2022-02-20 23:51:17,275 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:51:17,276 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:51:17,276 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:51:17,276 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:51:17,276 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:17" (1/1) ... [2022-02-20 23:51:17,290 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:51:17,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:51:17,307 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:17,325 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:17,330 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2022-02-20 23:51:17,331 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2022-02-20 23:51:17,331 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:51:17,331 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:51:17,331 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:51:17,331 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:51:17,331 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:51:17,332 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:51:17,332 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:51:17,332 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:51:17,460 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:51:17,461 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:51:17,676 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:51:17,683 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:51:17,684 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:51:17,685 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:51:17 BoogieIcfgContainer [2022-02-20 23:51:17,686 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:51:17,687 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:51:17,687 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:51:17,689 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:51:17,689 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:51:16" (1/3) ... [2022-02-20 23:51:17,689 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@39636268 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:51:17, skipping insertion in model container [2022-02-20 23:51:17,689 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:51:17" (2/3) ... [2022-02-20 23:51:17,690 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@39636268 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:51:17, skipping insertion in model container [2022-02-20 23:51:17,690 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:51:17" (3/3) ... [2022-02-20 23:51:17,691 INFO L111 eAbstractionObserver]: Analyzing ICFG memleaks_test18_1.i [2022-02-20 23:51:17,694 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:51:17,694 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 8 error locations. [2022-02-20 23:51:17,744 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:51:17,750 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:17,750 INFO L340 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2022-02-20 23:51:17,763 INFO L276 IsEmpty]: Start isEmpty. Operand has 34 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 30 states have internal predecessors, (37), 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:17,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:51:17,768 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:17,768 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:17,769 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:17,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:17,773 INFO L85 PathProgramCache]: Analyzing trace with hash 882041385, now seen corresponding path program 1 times [2022-02-20 23:51:17,780 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:17,780 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2023094418] [2022-02-20 23:51:17,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:17,781 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:17,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:17,783 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:17,784 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:17,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:17,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:17,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:17,843 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:17,925 INFO L290 TraceCheckUtils]: 0: Hoare triple {37#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); {37#true} is VALID [2022-02-20 23:51:17,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {37#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {37#true} is VALID [2022-02-20 23:51:17,926 INFO L272 TraceCheckUtils]: 2: Hoare triple {37#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {37#true} is VALID [2022-02-20 23:51:17,926 INFO L290 TraceCheckUtils]: 3: Hoare triple {37#true} ~size := #in~size; {37#true} is VALID [2022-02-20 23:51:17,927 INFO L290 TraceCheckUtils]: 4: Hoare triple {37#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; {54#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:17,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {54#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {54#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:17,929 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {54#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} {37#true} #69#return; {61#(not (= |ULTIMATE.start_entry_point_#t~ret38#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:17,930 INFO L290 TraceCheckUtils]: 7: Hoare triple {61#(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;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; {65#(not (= |ULTIMATE.start_entry_point_~array~0#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:17,931 INFO L290 TraceCheckUtils]: 8: Hoare triple {65#(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; {38#false} is VALID [2022-02-20 23:51:17,931 INFO L290 TraceCheckUtils]: 9: Hoare triple {38#false} assume { :end_inline_entry_point } true; {38#false} is VALID [2022-02-20 23:51:17,931 INFO L290 TraceCheckUtils]: 10: Hoare triple {38#false} assume !(#valid == main_old_#valid#1); {38#false} is VALID [2022-02-20 23:51:17,932 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,932 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:17,933 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:17,933 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2023094418] [2022-02-20 23:51:17,933 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2023094418] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:17,933 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:17,934 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:17,936 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1509180053] [2022-02-20 23:51:17,937 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:17,940 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,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:17,944 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:17,961 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,961 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:17,962 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:17,974 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:17,974 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:17,976 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 30 states have internal predecessors, (37), 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:18,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,235 INFO L93 Difference]: Finished difference Result 63 states and 73 transitions. [2022-02-20 23:51:18,235 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:51:18,235 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:18,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:18,236 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:18,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-02-20 23:51:18,252 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:18,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-02-20 23:51:18,256 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2022-02-20 23:51:18,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:18,347 INFO L225 Difference]: With dead ends: 63 [2022-02-20 23:51:18,347 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 23:51:18,349 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:18,356 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 27 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:18,357 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 134 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:51:18,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 23:51:18,380 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 36. [2022-02-20 23:51:18,381 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:18,381 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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:18,382 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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:18,382 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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:18,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,390 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-02-20 23:51:18,390 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:51:18,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,392 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,393 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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 59 states. [2022-02-20 23:51:18,393 INFO L87 Difference]: Start difference. First operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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 59 states. [2022-02-20 23:51:18,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:18,400 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-02-20 23:51:18,400 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:51:18,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:18,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:18,402 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:18,402 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:18,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 24 states have (on average 1.5) internal successors, (36), 31 states have internal predecessors, (36), 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:18,408 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 42 transitions. [2022-02-20 23:51:18,410 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 42 transitions. Word has length 11 [2022-02-20 23:51:18,410 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:18,410 INFO L470 AbstractCegarLoop]: Abstraction has 36 states and 42 transitions. [2022-02-20 23:51:18,411 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:18,411 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 42 transitions. [2022-02-20 23:51:18,412 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:51:18,412 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:18,412 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:18,435 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:18,619 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:18,619 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:18,621 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:18,621 INFO L85 PathProgramCache]: Analyzing trace with hash 1769545066, now seen corresponding path program 1 times [2022-02-20 23:51:18,623 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:18,623 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [131652685] [2022-02-20 23:51:18,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:18,624 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:18,624 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:18,641 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:18,642 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:18,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,680 INFO L263 TraceCheckSpWp]: Trace formula consists of 36 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:18,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:18,689 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:18,736 INFO L290 TraceCheckUtils]: 0: Hoare triple {291#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); {291#true} is VALID [2022-02-20 23:51:18,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {291#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:18,737 INFO L272 TraceCheckUtils]: 2: Hoare triple {299#(= |#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)); {303#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:18,738 INFO L290 TraceCheckUtils]: 3: Hoare triple {303#(= |old(#valid)| |#valid|)} ~size := #in~size; {303#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:18,738 INFO L290 TraceCheckUtils]: 4: Hoare triple {303#(= |old(#valid)| |#valid|)} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {303#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:18,739 INFO L290 TraceCheckUtils]: 5: Hoare triple {303#(= |old(#valid)| |#valid|)} assume true; {303#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:18,740 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {303#(= |old(#valid)| |#valid|)} {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} #69#return; {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:18,740 INFO L290 TraceCheckUtils]: 7: Hoare triple {299#(= |#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;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; {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:18,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32; {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:18,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume { :end_inline_entry_point } true; {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:51:18,742 INFO L290 TraceCheckUtils]: 10: Hoare triple {299#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume !(#valid == main_old_#valid#1); {292#false} is VALID [2022-02-20 23:51:18,743 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,743 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:18,743 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:18,743 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [131652685] [2022-02-20 23:51:18,743 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [131652685] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:18,744 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:18,744 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:51:18,744 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1367233269] [2022-02-20 23:51:18,744 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:18,745 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:18,745 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:18,745 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:18,755 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:18,755 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:18,755 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:18,756 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:18,756 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:18,757 INFO L87 Difference]: Start difference. First operand 36 states and 42 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:19,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,016 INFO L93 Difference]: Finished difference Result 57 states and 67 transitions. [2022-02-20 23:51:19,016 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:19,016 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:19,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:19,016 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:19,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 68 transitions. [2022-02-20 23:51:19,018 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:19,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 68 transitions. [2022-02-20 23:51:19,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 68 transitions. [2022-02-20 23:51:19,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:19,088 INFO L225 Difference]: With dead ends: 57 [2022-02-20 23:51:19,088 INFO L226 Difference]: Without dead ends: 55 [2022-02-20 23:51:19,089 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:19,089 INFO L933 BasicCegarLoop]: 57 mSDtfsCounter, 21 mSDsluCounter, 66 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:19,090 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 123 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:51:19,090 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-02-20 23:51:19,093 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 44. [2022-02-20 23:51:19,093 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:19,093 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,094 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,094 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,096 INFO L93 Difference]: Finished difference Result 55 states and 64 transitions. [2022-02-20 23:51:19,097 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 64 transitions. [2022-02-20 23:51:19,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Second operand 55 states. [2022-02-20 23:51:19,098 INFO L87 Difference]: Start difference. First operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Second operand 55 states. [2022-02-20 23:51:19,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,100 INFO L93 Difference]: Finished difference Result 55 states and 64 transitions. [2022-02-20 23:51:19,100 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 64 transitions. [2022-02-20 23:51:19,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:19,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:19,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 31 states have (on average 1.4838709677419355) internal successors, (46), 38 states have internal predecessors, (46), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 55 transitions. [2022-02-20 23:51:19,103 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 55 transitions. Word has length 11 [2022-02-20 23:51:19,103 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:19,103 INFO L470 AbstractCegarLoop]: Abstraction has 44 states and 55 transitions. [2022-02-20 23:51:19,103 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:19,104 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 55 transitions. [2022-02-20 23:51:19,104 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:51:19,104 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:19,104 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:19,123 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Ended with exit code 0 [2022-02-20 23:51:19,311 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:19,311 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:19,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:19,313 INFO L85 PathProgramCache]: Analyzing trace with hash 1533786013, now seen corresponding path program 1 times [2022-02-20 23:51:19,314 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:19,314 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1734063212] [2022-02-20 23:51:19,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:19,314 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:19,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:19,339 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:19,361 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:19,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:19,376 INFO L263 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:51:19,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:19,387 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:19,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {538#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); {538#true} is VALID [2022-02-20 23:51:19,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {538#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {546#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:19,455 INFO L272 TraceCheckUtils]: 2: Hoare triple {546#(= |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)); {538#true} is VALID [2022-02-20 23:51:19,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {538#true} ~size := #in~size; {538#true} is VALID [2022-02-20 23:51:19,456 INFO L290 TraceCheckUtils]: 4: Hoare triple {538#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; {538#true} is VALID [2022-02-20 23:51:19,456 INFO L290 TraceCheckUtils]: 5: Hoare triple {538#true} assume true; {538#true} is VALID [2022-02-20 23:51:19,456 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {538#true} {546#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #69#return; {546#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:19,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {546#(= |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;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; {565#(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:19,458 INFO L290 TraceCheckUtils]: 8: Hoare triple {565#(and (= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32)) (= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32)))} assume !(entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32); {565#(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:19,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {565#(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); {539#false} is VALID [2022-02-20 23:51:19,458 INFO L290 TraceCheckUtils]: 10: Hoare triple {539#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {539#false} is VALID [2022-02-20 23:51:19,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {539#false} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {539#false} is VALID [2022-02-20 23:51:19,458 INFO L290 TraceCheckUtils]: 12: Hoare triple {539#false} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {539#false} is VALID [2022-02-20 23:51:19,459 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:19,459 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:19,459 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:19,459 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1734063212] [2022-02-20 23:51:19,459 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1734063212] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:19,459 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:19,459 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:51:19,459 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1598683803] [2022-02-20 23:51:19,459 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:19,460 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:19,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:19,460 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:19,477 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:19,477 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:19,477 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:19,477 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:19,477 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:19,478 INFO L87 Difference]: Start difference. First operand 44 states and 55 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:19,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,595 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2022-02-20 23:51:19,595 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:19,595 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:19,595 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:19,596 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:19,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:51:19,597 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:19,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:51:19,598 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 62 transitions. [2022-02-20 23:51:19,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:19,667 INFO L225 Difference]: With dead ends: 75 [2022-02-20 23:51:19,667 INFO L226 Difference]: Without dead ends: 75 [2022-02-20 23:51:19,668 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:19,668 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 48 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 63 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:19,669 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 63 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:19,669 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-02-20 23:51:19,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 46. [2022-02-20 23:51:19,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:19,672 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,672 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,672 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,675 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2022-02-20 23:51:19,675 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 94 transitions. [2022-02-20 23:51:19,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,676 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Second operand 75 states. [2022-02-20 23:51:19,676 INFO L87 Difference]: Start difference. First operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Second operand 75 states. [2022-02-20 23:51:19,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:19,678 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2022-02-20 23:51:19,678 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 94 transitions. [2022-02-20 23:51:19,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:19,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:19,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:19,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:19,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 33 states have (on average 1.4545454545454546) internal successors, (48), 40 states have internal predecessors, (48), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-02-20 23:51:19,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 57 transitions. [2022-02-20 23:51:19,680 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 57 transitions. Word has length 13 [2022-02-20 23:51:19,680 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:19,680 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 57 transitions. [2022-02-20 23:51:19,680 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:19,680 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 57 transitions. [2022-02-20 23:51:19,681 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:19,681 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:19,681 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,699 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:19,887 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:19,887 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:19,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:19,887 INFO L85 PathProgramCache]: Analyzing trace with hash 447225726, now seen corresponding path program 1 times [2022-02-20 23:51:19,888 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:19,888 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1204881932] [2022-02-20 23:51:19,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:19,888 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:19,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:19,889 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:19,890 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:19,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:19,927 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:51:19,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:19,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:19,969 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,101 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:51:20,102 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:20,124 INFO L290 TraceCheckUtils]: 0: Hoare triple {851#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); {851#true} is VALID [2022-02-20 23:51:20,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {851#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {851#true} is VALID [2022-02-20 23:51:20,124 INFO L272 TraceCheckUtils]: 2: Hoare triple {851#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {851#true} is VALID [2022-02-20 23:51:20,124 INFO L290 TraceCheckUtils]: 3: Hoare triple {851#true} ~size := #in~size; {851#true} is VALID [2022-02-20 23:51:20,125 INFO L290 TraceCheckUtils]: 4: Hoare triple {851#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; {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:20,125 INFO L290 TraceCheckUtils]: 5: Hoare triple {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} assume true; {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:20,126 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} {851#true} #69#return; {875#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} is VALID [2022-02-20 23:51:20,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {875#(= (_ 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;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; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,127 INFO L290 TraceCheckUtils]: 8: Hoare triple {879#(= (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); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,127 INFO L290 TraceCheckUtils]: 9: Hoare triple {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,128 INFO L272 TraceCheckUtils]: 10: Hoare triple {879#(= (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); {889#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:20,128 INFO L290 TraceCheckUtils]: 11: Hoare triple {889#(= |old(#valid)| |#valid|)} ~size := #in~size; {889#(= |old(#valid)| |#valid|)} is VALID [2022-02-20 23:51:20,129 INFO L290 TraceCheckUtils]: 12: Hoare triple {889#(= |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; {896#(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:20,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {896#(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; {896#(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:20,131 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {896#(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))))} {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} #71#return; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,133 INFO L290 TraceCheckUtils]: 15: Hoare triple {879#(= (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; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,134 INFO L290 TraceCheckUtils]: 16: Hoare triple {879#(= (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); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {852#false} is VALID [2022-02-20 23:51:20,135 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:20,135 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:20,366 INFO L290 TraceCheckUtils]: 17: Hoare triple {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {852#false} is VALID [2022-02-20 23:51:20,367 INFO L290 TraceCheckUtils]: 16: Hoare triple {879#(= (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); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,367 INFO L290 TraceCheckUtils]: 15: Hoare triple {879#(= (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; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,368 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {924#(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))))} {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} #71#return; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,369 INFO L290 TraceCheckUtils]: 13: Hoare triple {924#(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; {924#(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:20,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {924#(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; {924#(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:20,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {924#(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; {924#(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:20,371 INFO L272 TraceCheckUtils]: 10: Hoare triple {879#(= (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); {924#(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:20,371 INFO L290 TraceCheckUtils]: 9: Hoare triple {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {879#(= (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); {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {875#(= (_ 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;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; {879#(= (select |#valid| |ULTIMATE.start_entry_point_~array~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:51:20,373 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} {851#true} #69#return; {875#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_entry_point_#t~ret38#1.base|))} is VALID [2022-02-20 23:51:20,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} assume true; {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:20,374 INFO L290 TraceCheckUtils]: 4: Hoare triple {851#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; {868#(= (_ bv1 1) (select |#valid| |ldv_malloc_#res.base|))} is VALID [2022-02-20 23:51:20,374 INFO L290 TraceCheckUtils]: 3: Hoare triple {851#true} ~size := #in~size; {851#true} is VALID [2022-02-20 23:51:20,374 INFO L272 TraceCheckUtils]: 2: Hoare triple {851#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {851#true} is VALID [2022-02-20 23:51:20,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {851#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {851#true} is VALID [2022-02-20 23:51:20,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {851#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); {851#true} is VALID [2022-02-20 23:51:20,374 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:20,374 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:20,375 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1204881932] [2022-02-20 23:51:20,375 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1204881932] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:51:20,375 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:20,375 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5] total 7 [2022-02-20 23:51:20,375 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1701984602] [2022-02-20 23:51:20,375 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:20,375 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:20,375 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:20,376 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:20,398 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:20,399 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:51:20,399 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:20,399 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:51:20,399 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:51:20,399 INFO L87 Difference]: Start difference. First operand 46 states and 57 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:20,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:20,758 INFO L93 Difference]: Finished difference Result 63 states and 79 transitions. [2022-02-20 23:51:20,758 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:51:20,758 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:20,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:20,759 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:20,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 59 transitions. [2022-02-20 23:51:20,760 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:20,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 59 transitions. [2022-02-20 23:51:20,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 59 transitions. [2022-02-20 23:51:20,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:20,819 INFO L225 Difference]: With dead ends: 63 [2022-02-20 23:51:20,819 INFO L226 Difference]: Without dead ends: 63 [2022-02-20 23:51:20,819 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:20,820 INFO L933 BasicCegarLoop]: 29 mSDtfsCounter, 19 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 32 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:20,820 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 118 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 78 Invalid, 0 Unknown, 32 Unchecked, 0.1s Time] [2022-02-20 23:51:20,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-02-20 23:51:20,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 58. [2022-02-20 23:51:20,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:20,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 23:51:20,825 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 23:51:20,825 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 23:51:20,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:20,828 INFO L93 Difference]: Finished difference Result 63 states and 79 transitions. [2022-02-20 23:51:20,828 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 79 transitions. [2022-02-20 23:51:20,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:20,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:20,828 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) Second operand 63 states. [2022-02-20 23:51:20,829 INFO L87 Difference]: Start difference. First operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) Second operand 63 states. [2022-02-20 23:51:20,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:20,831 INFO L93 Difference]: Finished difference Result 63 states and 79 transitions. [2022-02-20 23:51:20,831 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 79 transitions. [2022-02-20 23:51:20,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:20,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:20,831 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:20,831 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:20,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 44 states have (on average 1.4772727272727273) internal successors, (65), 50 states have internal predecessors, (65), 4 states have call successors, (4), 1 states have call predecessors, (4), 2 states have return successors, (8), 6 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 23:51:20,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 77 transitions. [2022-02-20 23:51:20,833 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 77 transitions. Word has length 18 [2022-02-20 23:51:20,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:20,834 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 77 transitions. [2022-02-20 23:51:20,834 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:20,834 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 77 transitions. [2022-02-20 23:51:20,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:20,834 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:20,834 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:20,846 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:21,043 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:21,043 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:21,044 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:21,044 INFO L85 PathProgramCache]: Analyzing trace with hash 447225727, now seen corresponding path program 1 times [2022-02-20 23:51:21,044 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:21,044 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1450313168] [2022-02-20 23:51:21,044 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:21,044 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:21,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:21,045 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:21,047 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:21,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:21,085 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:51:21,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:21,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:21,125 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:21,131 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:21,392 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:21,392 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:21,400 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:21,401 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:21,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {1212#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); {1212#true} is VALID [2022-02-20 23:51:21,456 INFO L290 TraceCheckUtils]: 1: Hoare triple {1212#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {1220#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:21,456 INFO L272 TraceCheckUtils]: 2: Hoare triple {1220#(= |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)); {1212#true} is VALID [2022-02-20 23:51:21,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {1212#true} ~size := #in~size; {1227#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:21,457 INFO L290 TraceCheckUtils]: 4: Hoare triple {1227#(= 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; {1231#(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:21,458 INFO L290 TraceCheckUtils]: 5: Hoare triple {1231#(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; {1231#(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:21,459 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1231#(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)))} {1220#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #69#return; {1238#(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:21,459 INFO L290 TraceCheckUtils]: 7: Hoare triple {1238#(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;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; {1242#(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:21,460 INFO L290 TraceCheckUtils]: 8: Hoare triple {1242#(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 !(entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32); {1242#(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:21,460 INFO L290 TraceCheckUtils]: 9: Hoare triple {1242#(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); {1242#(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:21,461 INFO L272 TraceCheckUtils]: 10: Hoare triple {1242#(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); {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:21,461 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:21,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {1252#(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; {1259#(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:21,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {1259#(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; {1259#(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:21,466 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1259#(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))))} {1242#(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)))} #71#return; {1266#(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:21,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {1266#(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; {1266#(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:21,467 INFO L290 TraceCheckUtils]: 16: Hoare triple {1266#(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); {1266#(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:21,467 INFO L290 TraceCheckUtils]: 17: Hoare triple {1266#(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)))); {1213#false} is VALID [2022-02-20 23:51:21,468 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:21,468 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:21,844 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:21,844 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1450313168] [2022-02-20 23:51:21,844 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1450313168] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:21,845 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1128037253] [2022-02-20 23:51:21,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:21,845 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:51:21,845 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:51:21,846 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:21,855 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:21,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:21,915 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:51:21,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:21,928 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:21,962 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:21,968 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,135 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:51:22,135 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,144 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:51:22,144 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,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {1212#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); {1212#true} is VALID [2022-02-20 23:51:22,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {1212#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {1220#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} is VALID [2022-02-20 23:51:22,176 INFO L272 TraceCheckUtils]: 2: Hoare triple {1220#(= |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)); {1212#true} is VALID [2022-02-20 23:51:22,177 INFO L290 TraceCheckUtils]: 3: Hoare triple {1212#true} ~size := #in~size; {1227#(= ldv_malloc_~size |ldv_malloc_#in~size|)} is VALID [2022-02-20 23:51:22,178 INFO L290 TraceCheckUtils]: 4: Hoare triple {1227#(= 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; {1231#(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,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {1231#(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; {1231#(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,179 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1231#(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)))} {1220#(= |ULTIMATE.start_entry_point_~len~0#1| (_ bv10 32))} #69#return; {1238#(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,180 INFO L290 TraceCheckUtils]: 7: Hoare triple {1238#(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;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; {1242#(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,180 INFO L290 TraceCheckUtils]: 8: Hoare triple {1242#(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 !(entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32); {1242#(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,181 INFO L290 TraceCheckUtils]: 9: Hoare triple {1242#(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); {1242#(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,182 INFO L272 TraceCheckUtils]: 10: Hoare triple {1242#(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); {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:22,182 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~size := #in~size; {1252#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:51:22,183 INFO L290 TraceCheckUtils]: 12: Hoare triple {1252#(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; {1259#(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,184 INFO L290 TraceCheckUtils]: 13: Hoare triple {1259#(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; {1259#(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,187 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1259#(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))))} {1242#(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)))} #71#return; {1266#(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,188 INFO L290 TraceCheckUtils]: 15: Hoare triple {1266#(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; {1266#(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,188 INFO L290 TraceCheckUtils]: 16: Hoare triple {1266#(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); {1266#(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,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {1266#(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)))); {1213#false} is VALID [2022-02-20 23:51:22,189 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,189 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:51:24,510 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1128037253] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:51:24,510 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:51:24,511 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 9 [2022-02-20 23:51:24,511 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1555839139] [2022-02-20 23:51:24,511 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:51:24,511 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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:24,511 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:24,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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:24,530 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:24,530 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:51:24,530 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:24,531 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:51:24,531 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=107, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:51:24,531 INFO L87 Difference]: Start difference. First operand 58 states and 77 transitions. Second operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,076 INFO L93 Difference]: Finished difference Result 107 states and 131 transitions. [2022-02-20 23:51:28,076 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:51:28,076 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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,076 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:28,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-02-20 23:51:28,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-02-20 23:51:28,079 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 105 transitions. [2022-02-20 23:51:28,171 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:28,173 INFO L225 Difference]: With dead ends: 107 [2022-02-20 23:51:28,173 INFO L226 Difference]: Without dead ends: 107 [2022-02-20 23:51:28,173 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 30 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 2.4s TimeCoverageRelationStatistics Valid=34, Invalid=148, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:51:28,173 INFO L933 BasicCegarLoop]: 55 mSDtfsCounter, 56 mSDsluCounter, 290 mSDsCounter, 0 mSdLazyCounter, 251 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 345 SdHoareTripleChecker+Invalid, 295 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 251 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 35 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:28,174 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 345 Invalid, 295 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 251 Invalid, 0 Unknown, 35 Unchecked, 0.5s Time] [2022-02-20 23:51:28,174 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 107 states. [2022-02-20 23:51:28,177 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 107 to 62. [2022-02-20 23:51:28,177 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:28,177 INFO L82 GeneralOperation]: Start isEquivalent. First operand 107 states. Second operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:28,177 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:28,178 INFO L87 Difference]: Start difference. First operand 107 states. Second operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:28,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,180 INFO L93 Difference]: Finished difference Result 107 states and 131 transitions. [2022-02-20 23:51:28,180 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 131 transitions. [2022-02-20 23:51:28,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,181 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) Second operand 107 states. [2022-02-20 23:51:28,181 INFO L87 Difference]: Start difference. First operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) Second operand 107 states. [2022-02-20 23:51:28,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,184 INFO L93 Difference]: Finished difference Result 107 states and 131 transitions. [2022-02-20 23:51:28,184 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 131 transitions. [2022-02-20 23:51:28,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:28,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:28,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:28,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:28,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 53 states have internal predecessors, (69), 5 states have call successors, (5), 1 states have call predecessors, (5), 2 states have return successors, (10), 7 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 23:51:28,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 84 transitions. [2022-02-20 23:51:28,186 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 84 transitions. Word has length 18 [2022-02-20 23:51:28,187 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:28,187 INFO L470 AbstractCegarLoop]: Abstraction has 62 states and 84 transitions. [2022-02-20 23:51:28,187 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 8 states have (on average 1.75) internal successors, (14), 9 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,187 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 84 transitions. [2022-02-20 23:51:28,187 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:51:28,187 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:28,187 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:28,206 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:28,398 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:28,596 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:28,596 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:28,597 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:28,598 INFO L85 PathProgramCache]: Analyzing trace with hash -58332899, now seen corresponding path program 1 times [2022-02-20 23:51:28,598 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:28,598 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1323629320] [2022-02-20 23:51:28,598 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:28,598 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:28,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:28,599 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:28,600 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:28,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:28,663 INFO L263 TraceCheckSpWp]: Trace formula consists of 56 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:51:28,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:28,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:28,772 INFO L290 TraceCheckUtils]: 0: Hoare triple {1739#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); {1739#true} is VALID [2022-02-20 23:51:28,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {1739#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {1739#true} is VALID [2022-02-20 23:51:28,772 INFO L272 TraceCheckUtils]: 2: Hoare triple {1739#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {1739#true} is VALID [2022-02-20 23:51:28,772 INFO L290 TraceCheckUtils]: 3: Hoare triple {1739#true} ~size := #in~size; {1739#true} is VALID [2022-02-20 23:51:28,773 INFO L290 TraceCheckUtils]: 4: Hoare triple {1739#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {1756#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,774 INFO L290 TraceCheckUtils]: 5: Hoare triple {1756#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {1756#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:28,775 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1756#(and (= |ldv_malloc_#res.offset| (_ bv0 32)) (= |ldv_malloc_#res.base| (_ bv0 32)))} {1739#true} #69#return; {1763#(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,776 INFO L290 TraceCheckUtils]: 7: Hoare triple {1763#(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;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; {1767#(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,777 INFO L290 TraceCheckUtils]: 8: Hoare triple {1767#(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); {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 9: Hoare triple {1740#false} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L272 TraceCheckUtils]: 10: Hoare triple {1740#false} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 11: Hoare triple {1740#false} ~size := #in~size; {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {1740#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; {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 13: Hoare triple {1740#false} assume true; {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {1740#false} {1740#false} #71#return; {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 15: Hoare triple {1740#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; {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 16: Hoare triple {1740#false} assume !(entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32); {1740#false} is VALID [2022-02-20 23:51:28,777 INFO L290 TraceCheckUtils]: 17: Hoare triple {1740#false} assume !(1bv1 == #valid[entry_point_~array~0#1.base]); {1740#false} is VALID [2022-02-20 23:51:28,777 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,778 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:28,778 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:28,778 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1323629320] [2022-02-20 23:51:28,778 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1323629320] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:28,778 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:28,778 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:28,778 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1570319344] [2022-02-20 23:51:28,778 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:28,778 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,778 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:28,778 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,801 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,801 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:28,801 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:28,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:28,801 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:28,801 INFO L87 Difference]: Start difference. First operand 62 states and 84 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,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:28,974 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-02-20 23:51:28,974 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:51:28,974 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,974 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:28,974 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,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-02-20 23:51:28,975 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,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-02-20 23:51:28,975 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 40 transitions. [2022-02-20 23:51:29,004 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:29,005 INFO L225 Difference]: With dead ends: 42 [2022-02-20 23:51:29,005 INFO L226 Difference]: Without dead ends: 40 [2022-02-20 23:51:29,005 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:29,006 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 0 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 14 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:51:29,006 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 138 Invalid, 14 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:51:29,006 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-02-20 23:51:29,008 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-02-20 23:51:29,008 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:29,008 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,008 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,008 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,009 INFO L93 Difference]: Finished difference Result 40 states and 49 transitions. [2022-02-20 23:51:29,009 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-02-20 23:51:29,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Second operand 40 states. [2022-02-20 23:51:29,010 INFO L87 Difference]: Start difference. First operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Second operand 40 states. [2022-02-20 23:51:29,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,011 INFO L93 Difference]: Finished difference Result 40 states and 49 transitions. [2022-02-20 23:51:29,011 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-02-20 23:51:29,011 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,011 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,011 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:29,011 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:29,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 28 states have (on average 1.4642857142857142) internal successors, (41), 35 states have internal predecessors, (41), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-02-20 23:51:29,012 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-02-20 23:51:29,012 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:29,012 INFO L470 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-02-20 23:51:29,012 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:29,012 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-02-20 23:51:29,012 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:51:29,012 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:29,012 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:29,036 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:29,213 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:29,213 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:29,213 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:29,213 INFO L85 PathProgramCache]: Analyzing trace with hash 287141738, now seen corresponding path program 1 times [2022-02-20 23:51:29,214 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:29,214 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1091608030] [2022-02-20 23:51:29,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:29,214 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:29,214 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:29,215 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:29,216 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:29,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,257 INFO L263 TraceCheckSpWp]: Trace formula consists of 65 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:51:29,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,265 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:29,323 INFO L290 TraceCheckUtils]: 0: Hoare triple {1959#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); {1959#true} is VALID [2022-02-20 23:51:29,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {1959#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {1959#true} is VALID [2022-02-20 23:51:29,324 INFO L272 TraceCheckUtils]: 2: Hoare triple {1959#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 3: Hoare triple {1959#true} ~size := #in~size; {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 4: Hoare triple {1959#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; {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {1959#true} assume true; {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1959#true} {1959#true} #69#return; {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {1959#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;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; {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {1959#true} assume !(entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32); {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {1959#true} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {1959#true} is VALID [2022-02-20 23:51:29,325 INFO L272 TraceCheckUtils]: 10: Hoare triple {1959#true} call entry_point_#t~ret40#1.base, entry_point_#t~ret40#1.offset := ldv_malloc(4bv32); {1959#true} is VALID [2022-02-20 23:51:29,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {1959#true} ~size := #in~size; {1959#true} is VALID [2022-02-20 23:51:29,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {1959#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; {2000#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:29,326 INFO L290 TraceCheckUtils]: 13: Hoare triple {2000#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} assume true; {2000#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:29,327 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {2000#(not (= |ldv_malloc_#res.base| (_ bv0 32)))} {1959#true} #71#return; {2007#(not (= |ULTIMATE.start_entry_point_#t~ret40#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:29,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {2007#(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; {2011#(not (= |ULTIMATE.start_entry_point_~p~0#1.base| (_ bv0 32)))} is VALID [2022-02-20 23:51:29,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {2011#(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; {1960#false} is VALID [2022-02-20 23:51:29,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {1960#false} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {1960#false} is VALID [2022-02-20 23:51:29,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {1960#false} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {1960#false} is VALID [2022-02-20 23:51:29,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {1960#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)))); {1960#false} is VALID [2022-02-20 23:51:29,328 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:29,328 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:29,328 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:29,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1091608030] [2022-02-20 23:51:29,329 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1091608030] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:29,329 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:29,329 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:51:29,329 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [377477670] [2022-02-20 23:51:29,329 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:29,330 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:29,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:29,332 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:29,347 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:29,348 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:51:29,348 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:29,348 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:51:29,348 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:51:29,349 INFO L87 Difference]: Start difference. First operand 40 states and 49 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:29,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,537 INFO L93 Difference]: Finished difference Result 69 states and 83 transitions. [2022-02-20 23:51:29,537 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:51:29,537 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:29,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:29,537 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:29,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2022-02-20 23:51:29,538 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:29,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2022-02-20 23:51:29,539 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 65 transitions. [2022-02-20 23:51:29,589 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:29,590 INFO L225 Difference]: With dead ends: 69 [2022-02-20 23:51:29,590 INFO L226 Difference]: Without dead ends: 69 [2022-02-20 23:51:29,590 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:29,591 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 21 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 132 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:29,591 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 132 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:29,592 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-02-20 23:51:29,593 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 44. [2022-02-20 23:51:29,593 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:29,593 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,594 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,594 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,596 INFO L93 Difference]: Finished difference Result 69 states and 83 transitions. [2022-02-20 23:51:29,596 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 83 transitions. [2022-02-20 23:51:29,596 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,596 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Second operand 69 states. [2022-02-20 23:51:29,599 INFO L87 Difference]: Start difference. First operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Second operand 69 states. [2022-02-20 23:51:29,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:29,601 INFO L93 Difference]: Finished difference Result 69 states and 83 transitions. [2022-02-20 23:51:29,601 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 83 transitions. [2022-02-20 23:51:29,601 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:29,601 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:29,601 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:29,601 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:29,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 32 states have (on average 1.40625) internal successors, (45), 37 states have internal predecessors, (45), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:29,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 53 transitions. [2022-02-20 23:51:29,603 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 53 transitions. Word has length 20 [2022-02-20 23:51:29,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:29,603 INFO L470 AbstractCegarLoop]: Abstraction has 44 states and 53 transitions. [2022-02-20 23:51:29,603 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:29,603 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 53 transitions. [2022-02-20 23:51:29,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:51:29,604 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:29,604 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:29,612 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,804 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,804 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:29,805 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:29,805 INFO L85 PathProgramCache]: Analyzing trace with hash 2029952073, now seen corresponding path program 1 times [2022-02-20 23:51:29,805 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:29,805 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1942431763] [2022-02-20 23:51:29,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:29,805 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:29,805 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:29,806 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,808 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,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,842 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:51:29,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:51:29,848 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:51:29,898 INFO L290 TraceCheckUtils]: 0: Hoare triple {2276#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); {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {2276#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_~len~0#1, entry_point_~array~0#1.base, entry_point_~array~0#1.offset, 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 := 10bv32; {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L272 TraceCheckUtils]: 2: Hoare triple {2276#true} call entry_point_#t~ret38#1.base, entry_point_#t~ret38#1.offset := ldv_malloc(~bvmul32(4bv32, entry_point_~len~0#1)); {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L290 TraceCheckUtils]: 3: Hoare triple {2276#true} ~size := #in~size; {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L290 TraceCheckUtils]: 4: Hoare triple {2276#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; {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {2276#true} assume true; {2276#true} is VALID [2022-02-20 23:51:29,899 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2276#true} {2276#true} #69#return; {2276#true} is VALID [2022-02-20 23:51:29,900 INFO L290 TraceCheckUtils]: 7: Hoare triple {2276#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;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; {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,900 INFO L290 TraceCheckUtils]: 8: Hoare triple {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} assume !(entry_point_~array~0#1.base == 0bv32 && entry_point_~array~0#1.offset == 0bv32); {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,901 INFO L290 TraceCheckUtils]: 9: Hoare triple {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} assume !!~bvslt32(entry_point_~i~0#1, entry_point_~len~0#1); {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,901 INFO L272 TraceCheckUtils]: 10: Hoare triple {2302#(= |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); {2276#true} is VALID [2022-02-20 23:51:29,901 INFO L290 TraceCheckUtils]: 11: Hoare triple {2276#true} ~size := #in~size; {2276#true} is VALID [2022-02-20 23:51:29,901 INFO L290 TraceCheckUtils]: 12: Hoare triple {2276#true} assume !(0bv32 != #t~nondet11);havoc #t~nondet11;#res.base, #res.offset := 0bv32, 0bv32; {2276#true} is VALID [2022-02-20 23:51:29,901 INFO L290 TraceCheckUtils]: 13: Hoare triple {2276#true} assume true; {2276#true} is VALID [2022-02-20 23:51:29,902 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {2276#true} {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} #71#return; {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,902 INFO L290 TraceCheckUtils]: 15: Hoare triple {2302#(= |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; {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,902 INFO L290 TraceCheckUtils]: 16: Hoare triple {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} assume entry_point_~p~0#1.base == 0bv32 && entry_point_~p~0#1.offset == 0bv32; {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} is VALID [2022-02-20 23:51:29,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {2302#(= |ULTIMATE.start_entry_point_~i~0#1| (_ bv0 32))} entry_point_~j~0#1 := ~bvsub32(entry_point_~i~0#1, 1bv32); {2333#(= (_ bv4294967295 32) |ULTIMATE.start_entry_point_~j~0#1|)} is VALID [2022-02-20 23:51:29,903 INFO L290 TraceCheckUtils]: 18: Hoare triple {2333#(= (_ bv4294967295 32) |ULTIMATE.start_entry_point_~j~0#1|)} assume !!~bvsge32(entry_point_~j~0#1, 0bv32); {2277#false} is VALID [2022-02-20 23:51:29,903 INFO L290 TraceCheckUtils]: 19: Hoare triple {2277#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)))); {2277#false} is VALID [2022-02-20 23:51:29,903 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,904 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:51:29,904 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:51:29,904 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1942431763] [2022-02-20 23:51:29,904 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1942431763] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:51:29,904 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:51:29,904 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:51:29,904 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748901343] [2022-02-20 23:51:29,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:51:29,905 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,905 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:51:29,905 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,920 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,920 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:51:29,920 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:51:29,920 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:51:29,921 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:51:29,921 INFO L87 Difference]: Start difference. First operand 44 states and 53 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:30,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,064 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:51:30,064 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:51:30,065 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:30,065 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:51:30,065 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:30,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-02-20 23:51:30,066 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:30,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-02-20 23:51:30,066 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 48 transitions. [2022-02-20 23:51:30,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:51:30,108 INFO L225 Difference]: With dead ends: 50 [2022-02-20 23:51:30,108 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 23:51:30,108 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:30,109 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 9 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 86 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:30,109 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 86 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:30,110 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 23:51:30,112 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 46. [2022-02-20 23:51:30,112 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:51:30,112 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:30,112 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:30,112 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:30,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,114 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:51:30,114 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:51:30,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:30,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:30,114 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Second operand 50 states. [2022-02-20 23:51:30,114 INFO L87 Difference]: Start difference. First operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Second operand 50 states. [2022-02-20 23:51:30,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:51:30,115 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:51:30,115 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:51:30,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:51:30,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:51:30,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:51:30,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:51:30,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 39 states have internal predecessors, (47), 3 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 23:51:30,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 55 transitions. [2022-02-20 23:51:30,116 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 55 transitions. Word has length 20 [2022-02-20 23:51:30,116 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:51:30,116 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 55 transitions. [2022-02-20 23:51:30,116 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:30,117 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 55 transitions. [2022-02-20 23:51:30,117 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:51:30,117 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:51:30,117 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:30,125 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:30,317 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:30,317 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 4 more)] === [2022-02-20 23:51:30,318 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:51:30,318 INFO L85 PathProgramCache]: Analyzing trace with hash -1495996631, now seen corresponding path program 1 times [2022-02-20 23:51:30,318 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:51:30,318 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1990913583] [2022-02-20 23:51:30,318 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:51:30,318 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:51:30,318 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:51:30,319 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:30,345 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:30,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:51:30,366 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 23:51:30,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:51:30,394 INFO L138 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2022-02-20 23:51:30,394 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 23:51:30,395 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr7ASSERT_VIOLATIONMEMORY_LEAK (7 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0REQUIRES_VIOLATION (6 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1REQUIRES_VIOLATION (5 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2REQUIRES_VIOLATION (4 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr3REQUIRES_VIOLATION (3 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr4ASSERT_VIOLATIONMEMORY_FREE (2 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr5ASSERT_VIOLATIONMEMORY_FREE (1 of 8 remaining) [2022-02-20 23:51:30,396 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr6ASSERT_VIOLATIONMEMORY_FREE (0 of 8 remaining) [2022-02-20 23:51:30,403 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,597 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,599 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:51:30,601 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 23:51:30,608 FATAL L489 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call #t~ret38 := ldv_malloc(~bvmul32(4bv32, ~len~0)); [2022-02-20 23:51:30,608 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getProgramExecutionAsString(UnprovableResult.java:132) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getLongDescription(UnprovableResult.java:125) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportLocationResults(TraceAbstractionStarter.java:607) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:182) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 23:51:30,609 INFO L158 Benchmark]: Toolchain (without parser) took 13970.05ms. Allocated memory was 58.7MB in the beginning and 134.2MB in the end (delta: 75.5MB). Free memory was 35.7MB in the beginning and 100.3MB in the end (delta: -64.6MB). Peak memory consumption was 9.2MB. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 58.7MB. Free memory was 40.5MB in the beginning and 40.5MB in the end (delta: 44.5kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: CACSL2BoogieTranslator took 546.09ms. Allocated memory was 58.7MB in the beginning and 81.8MB in the end (delta: 23.1MB). Free memory was 35.5MB in the beginning and 61.3MB in the end (delta: -25.8MB). Peak memory consumption was 16.7MB. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: Boogie Procedure Inliner took 49.92ms. Allocated memory is still 81.8MB. Free memory was 61.3MB in the beginning and 58.9MB in the end (delta: 2.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: Boogie Preprocessor took 37.16ms. Allocated memory is still 81.8MB. Free memory was 58.9MB in the beginning and 57.2MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: RCFGBuilder took 410.19ms. Allocated memory is still 81.8MB. Free memory was 57.2MB in the beginning and 43.9MB in the end (delta: 13.2MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2022-02-20 23:51:30,610 INFO L158 Benchmark]: TraceAbstraction took 12922.22ms. Allocated memory was 81.8MB in the beginning and 134.2MB in the end (delta: 52.4MB). Free memory was 43.3MB in the beginning and 100.3MB in the end (delta: -57.0MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:51:30,611 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.17ms. Allocated memory is still 58.7MB. Free memory was 40.5MB in the beginning and 40.5MB in the end (delta: 44.5kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 546.09ms. Allocated memory was 58.7MB in the beginning and 81.8MB in the end (delta: 23.1MB). Free memory was 35.5MB in the beginning and 61.3MB in the end (delta: -25.8MB). Peak memory consumption was 16.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 49.92ms. Allocated memory is still 81.8MB. Free memory was 61.3MB in the beginning and 58.9MB in the end (delta: 2.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 37.16ms. Allocated memory is still 81.8MB. Free memory was 58.9MB in the beginning and 57.2MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 410.19ms. Allocated memory is still 81.8MB. Free memory was 57.2MB in the beginning and 43.9MB in the end (delta: 13.2MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * TraceAbstraction took 12922.22ms. Allocated memory was 81.8MB in the beginning and 134.2MB in the end (delta: 52.4MB). Free memory was 43.3MB in the beginning and 100.3MB in the end (delta: -57.0MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 23:51:30,654 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator