./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/java_BubbleSort-alloca-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/array-memsafety/java_BubbleSort-alloca-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 ba885d2ca843c278430bc3d4272c307ea7df8f1fbcd0da84e81382a8c1939a93 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:40:22,405 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:40:22,406 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:40:22,427 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:40:22,428 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:40:22,428 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:40:22,429 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:40:22,431 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:40:22,432 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:40:22,432 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:40:22,433 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:40:22,436 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:40:22,436 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:40:22,440 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:40:22,443 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:40:22,444 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:40:22,445 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:40:22,446 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:40:22,450 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:40:22,455 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:40:22,456 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:40:22,458 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:40:22,458 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:40:22,459 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:40:22,463 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:40:22,465 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:40:22,465 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:40:22,466 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:40:22,467 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:40:22,468 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:40:22,468 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:40:22,469 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:40:22,470 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:40:22,471 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:40:22,472 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:40:22,472 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:40:22,473 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:40:22,473 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:40:22,473 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:40:22,474 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:40:22,474 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:40:22,475 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:40:22,495 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:40:22,497 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:40:22,498 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:40:22,498 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:40:22,499 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:40:22,499 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:40:22,499 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:40:22,500 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:40:22,500 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:40:22,500 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:40:22,501 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:40:22,501 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:40:22,501 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:40:22,501 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:40:22,501 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:40:22,502 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:40:22,503 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:40:22,503 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:40:22,503 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:40:22,503 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:40:22,503 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:40:22,504 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:40:22,505 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:40:22,505 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:40:22,505 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 -> ba885d2ca843c278430bc3d4272c307ea7df8f1fbcd0da84e81382a8c1939a93 [2022-02-20 23:40:22,672 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:40:22,702 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:40:22,704 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:40:22,704 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:40:22,705 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:40:22,706 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/java_BubbleSort-alloca-1.i [2022-02-20 23:40:22,750 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a241bb49/34fa14232db445b699bc61d73e106f2f/FLAG329f6facb [2022-02-20 23:40:23,151 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:40:23,152 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/java_BubbleSort-alloca-1.i [2022-02-20 23:40:23,160 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a241bb49/34fa14232db445b699bc61d73e106f2f/FLAG329f6facb [2022-02-20 23:40:23,174 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7a241bb49/34fa14232db445b699bc61d73e106f2f [2022-02-20 23:40:23,176 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:40:23,178 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:40:23,181 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:23,181 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:40:23,183 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:40:23,187 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:23" (1/1) ... [2022-02-20 23:40:23,188 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4f13d259 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:23, skipping insertion in model container [2022-02-20 23:40:23,188 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:23" (1/1) ... [2022-02-20 23:40:23,193 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:40:23,226 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:40:23,465 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:23,471 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:40:23,471 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@bda60d2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:23, skipping insertion in model container [2022-02-20 23:40:23,471 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:23,471 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:40:23,473 INFO L158 Benchmark]: Toolchain (without parser) took 294.22ms. Allocated memory is still 94.4MB. Free memory was 60.7MB in the beginning and 68.7MB in the end (delta: -8.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:40:23,473 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 94.4MB. Free memory was 65.3MB in the beginning and 65.2MB in the end (delta: 29.5kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:40:23,474 INFO L158 Benchmark]: CACSL2BoogieTranslator took 290.36ms. Allocated memory is still 94.4MB. Free memory was 60.5MB in the beginning and 68.7MB in the end (delta: -8.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 23:40:23,475 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.09ms. Allocated memory is still 94.4MB. Free memory was 65.3MB in the beginning and 65.2MB in the end (delta: 29.5kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 290.36ms. Allocated memory is still 94.4MB. Free memory was 60.5MB in the beginning and 68.7MB in the end (delta: -8.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 526]: 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/array-memsafety/java_BubbleSort-alloca-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 ba885d2ca843c278430bc3d4272c307ea7df8f1fbcd0da84e81382a8c1939a93 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:40:25,030 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:40:25,032 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:40:25,050 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:40:25,051 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:40:25,051 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:40:25,052 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:40:25,053 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:40:25,054 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:40:25,055 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:40:25,056 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:40:25,056 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:40:25,062 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:40:25,064 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:40:25,065 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:40:25,065 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:40:25,066 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:40:25,069 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:40:25,070 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:40:25,072 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:40:25,076 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:40:25,077 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:40:25,078 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:40:25,079 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:40:25,081 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:40:25,084 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:40:25,085 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:40:25,085 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:40:25,088 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:40:25,089 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:40:25,089 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:40:25,090 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:40:25,090 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:40:25,092 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:40:25,093 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:40:25,093 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:40:25,094 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:40:25,094 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:40:25,094 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:40:25,095 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:40:25,096 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:40:25,097 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:40:25,118 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:40:25,119 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:40:25,119 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:40:25,120 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:40:25,120 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:40:25,120 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:40:25,122 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:40:25,122 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:40:25,122 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:40:25,122 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:40:25,123 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:40:25,124 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:40:25,125 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:40:25,125 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:40:25,125 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:40:25,125 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:40:25,125 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:40:25,125 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:40:25,125 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:40:25,126 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:40:25,126 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:40:25,126 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:40:25,126 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:40:25,126 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 -> ba885d2ca843c278430bc3d4272c307ea7df8f1fbcd0da84e81382a8c1939a93 [2022-02-20 23:40:25,360 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:40:25,381 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:40:25,382 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:40:25,383 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:40:25,384 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:40:25,385 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/java_BubbleSort-alloca-1.i [2022-02-20 23:40:25,439 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9b569ded/322cf435c15442f7bdc83eefc2650003/FLAGabb968e41 [2022-02-20 23:40:25,835 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:40:25,840 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/java_BubbleSort-alloca-1.i [2022-02-20 23:40:25,855 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9b569ded/322cf435c15442f7bdc83eefc2650003/FLAGabb968e41 [2022-02-20 23:40:26,202 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f9b569ded/322cf435c15442f7bdc83eefc2650003 [2022-02-20 23:40:26,204 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:40:26,205 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:40:26,206 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:26,206 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:40:26,221 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:40:26,222 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,223 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5c4c260e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26, skipping insertion in model container [2022-02-20 23:40:26,223 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,227 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:40:26,254 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:40:26,473 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:26,481 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:40:26,501 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:40:26,533 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:26,548 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:40:26,572 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:26,592 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:40:26,592 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26 WrapperNode [2022-02-20 23:40:26,592 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:26,593 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:40:26,593 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:40:26,593 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:40:26,598 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:40:26" (1/1) ... [2022-02-20 23:40:26,613 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:40:26" (1/1) ... [2022-02-20 23:40:26,639 INFO L137 Inliner]: procedures = 117, calls = 13, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 63 [2022-02-20 23:40:26,640 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:40:26,641 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:40:26,641 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:40:26,641 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:40:26,646 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,646 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,663 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,665 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,670 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,673 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,675 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,677 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:40:26,678 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:40:26,678 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:40:26,678 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:40:26,679 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (1/1) ... [2022-02-20 23:40:26,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:40:26,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:26,702 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:40:26,705 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:40:26,728 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:40:26,728 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:40:26,728 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:40:26,728 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:40:26,728 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:40:26,728 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:40:26,818 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:40:26,820 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:40:27,122 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:40:27,127 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:40:27,127 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 23:40:27,129 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:40:27 BoogieIcfgContainer [2022-02-20 23:40:27,129 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:40:27,130 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:40:27,130 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:40:27,132 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:40:27,133 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:40:26" (1/3) ... [2022-02-20 23:40:27,133 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@602d7df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:40:27, skipping insertion in model container [2022-02-20 23:40:27,133 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:26" (2/3) ... [2022-02-20 23:40:27,134 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@602d7df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:40:27, skipping insertion in model container [2022-02-20 23:40:27,134 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:40:27" (3/3) ... [2022-02-20 23:40:27,135 INFO L111 eAbstractionObserver]: Analyzing ICFG java_BubbleSort-alloca-1.i [2022-02-20 23:40:27,138 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:40:27,138 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 15 error locations. [2022-02-20 23:40:27,179 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:40:27,186 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:40:27,186 INFO L340 AbstractCegarLoop]: Starting to check reachability of 15 error locations. [2022-02-20 23:40:27,201 INFO L276 IsEmpty]: Start isEmpty. Operand has 41 states, 25 states have (on average 1.92) internal successors, (48), 40 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,204 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:40:27,205 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:27,205 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:40:27,205 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:27,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:27,209 INFO L85 PathProgramCache]: Analyzing trace with hash 889508873, now seen corresponding path program 1 times [2022-02-20 23:40:27,217 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:27,218 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [85653355] [2022-02-20 23:40:27,218 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:27,219 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:27,220 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:27,222 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:40:27,223 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:40:27,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:27,297 INFO L263 TraceCheckSpWp]: Trace formula consists of 23 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:40:27,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:27,305 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:27,404 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:40:27,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {44#true} is VALID [2022-02-20 23:40:27,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {44#true} is VALID [2022-02-20 23:40:27,428 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#true} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {44#true} is VALID [2022-02-20 23:40:27,431 INFO L290 TraceCheckUtils]: 3: Hoare triple {44#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {58#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:27,431 INFO L290 TraceCheckUtils]: 4: Hoare triple {58#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {58#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:27,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {58#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_~numbers~0#1.base]); {45#false} is VALID [2022-02-20 23:40:27,433 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:40:27,433 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:27,434 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:27,434 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [85653355] [2022-02-20 23:40:27,435 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [85653355] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:27,439 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:27,439 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:40:27,441 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1948314548] [2022-02-20 23:40:27,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:27,445 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:27,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:27,447 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,457 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:27,457 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:40:27,458 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:27,481 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:40:27,482 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:40:27,484 INFO L87 Difference]: Start difference. First operand has 41 states, 25 states have (on average 1.92) internal successors, (48), 40 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:27,694 INFO L93 Difference]: Finished difference Result 40 states and 44 transitions. [2022-02-20 23:40:27,695 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:40:27,695 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:27,695 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:27,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2022-02-20 23:40:27,702 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2022-02-20 23:40:27,708 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 48 transitions. [2022-02-20 23:40:27,776 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:40:27,782 INFO L225 Difference]: With dead ends: 40 [2022-02-20 23:40:27,782 INFO L226 Difference]: Without dead ends: 38 [2022-02-20 23:40:27,784 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:40:27,786 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 34 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 31 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.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:27,787 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 31 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:27,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-02-20 23:40:27,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-02-20 23:40:27,805 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:27,806 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,807 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,808 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:27,815 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-02-20 23:40:27,815 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-02-20 23:40:27,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:27,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:27,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 38 states. [2022-02-20 23:40:27,817 INFO L87 Difference]: Start difference. First operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 38 states. [2022-02-20 23:40:27,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:27,820 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-02-20 23:40:27,820 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-02-20 23:40:27,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:27,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:27,847 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:27,847 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:27,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 24 states have (on average 1.75) internal successors, (42), 37 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 42 transitions. [2022-02-20 23:40:27,852 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 42 transitions. Word has length 6 [2022-02-20 23:40:27,853 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:27,853 INFO L470 AbstractCegarLoop]: Abstraction has 38 states and 42 transitions. [2022-02-20 23:40:27,854 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:27,854 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-02-20 23:40:27,854 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:40:27,854 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:27,855 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:40:27,866 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:40:28,065 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:40:28,065 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:28,066 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:28,066 INFO L85 PathProgramCache]: Analyzing trace with hash 889508874, now seen corresponding path program 1 times [2022-02-20 23:40:28,066 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:28,067 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2041429291] [2022-02-20 23:40:28,067 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:28,067 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:28,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:28,076 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:40:28,078 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:40:28,106 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:28,107 INFO L263 TraceCheckSpWp]: Trace formula consists of 23 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:40:28,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:28,113 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:28,148 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:40:28,175 INFO L290 TraceCheckUtils]: 0: Hoare triple {218#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {218#true} is VALID [2022-02-20 23:40:28,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {218#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {218#true} is VALID [2022-02-20 23:40:28,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {218#true} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {229#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:28,178 INFO L290 TraceCheckUtils]: 3: Hoare triple {229#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {233#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:28,178 INFO L290 TraceCheckUtils]: 4: Hoare triple {233#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {233#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:28,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {233#(and (= (_ bv4 32) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {219#false} is VALID [2022-02-20 23:40:28,179 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:40:28,180 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:28,180 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:28,180 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2041429291] [2022-02-20 23:40:28,180 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2041429291] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:28,180 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:28,180 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:28,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [822649263] [2022-02-20 23:40:28,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:28,182 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:28,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:28,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,191 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:28,192 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:28,192 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:28,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:28,193 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:28,193 INFO L87 Difference]: Start difference. First operand 38 states and 42 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:28,868 INFO L93 Difference]: Finished difference Result 77 states and 84 transitions. [2022-02-20 23:40:28,869 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:28,869 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:28,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:28,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 86 transitions. [2022-02-20 23:40:28,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 86 transitions. [2022-02-20 23:40:28,872 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 86 transitions. [2022-02-20 23:40:28,975 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:28,976 INFO L225 Difference]: With dead ends: 77 [2022-02-20 23:40:28,976 INFO L226 Difference]: Without dead ends: 77 [2022-02-20 23:40:28,977 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 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:40:28,978 INFO L933 BasicCegarLoop]: 69 mSDtfsCounter, 43 mSDsluCounter, 76 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:28,978 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 145 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:40:28,979 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-02-20 23:40:28,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 41. [2022-02-20 23:40:28,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:28,981 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,982 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,982 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:28,984 INFO L93 Difference]: Finished difference Result 77 states and 84 transitions. [2022-02-20 23:40:28,985 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 84 transitions. [2022-02-20 23:40:28,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:28,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:28,986 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 77 states. [2022-02-20 23:40:28,986 INFO L87 Difference]: Start difference. First operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 77 states. [2022-02-20 23:40:28,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:28,988 INFO L93 Difference]: Finished difference Result 77 states and 84 transitions. [2022-02-20 23:40:28,989 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 84 transitions. [2022-02-20 23:40:28,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:28,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:28,989 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:28,989 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:28,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 27 states have (on average 1.6666666666666667) internal successors, (45), 40 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-02-20 23:40:28,991 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 6 [2022-02-20 23:40:28,991 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:28,991 INFO L470 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-02-20 23:40:28,992 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:28,992 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-02-20 23:40:28,992 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:40:28,992 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:28,992 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:40:29,004 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:40:29,201 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:40:29,201 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:29,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:29,202 INFO L85 PathProgramCache]: Analyzing trace with hash 889568456, now seen corresponding path program 1 times [2022-02-20 23:40:29,202 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:29,202 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1572791602] [2022-02-20 23:40:29,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:29,203 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:29,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:29,206 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:40:29,213 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:40:29,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:29,239 INFO L263 TraceCheckSpWp]: Trace formula consists of 23 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:40:29,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:29,245 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:29,287 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 8 treesize of output 7 [2022-02-20 23:40:29,334 INFO L290 TraceCheckUtils]: 0: Hoare triple {513#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {513#true} is VALID [2022-02-20 23:40:29,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {513#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {513#true} is VALID [2022-02-20 23:40:29,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {513#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {524#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:29,337 INFO L290 TraceCheckUtils]: 3: Hoare triple {524#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {528#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:29,337 INFO L290 TraceCheckUtils]: 4: Hoare triple {528#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {528#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:29,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {528#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {514#false} is VALID [2022-02-20 23:40:29,339 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:40:29,339 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:29,339 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:29,339 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1572791602] [2022-02-20 23:40:29,340 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1572791602] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:29,340 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:29,340 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:29,340 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [749245031] [2022-02-20 23:40:29,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:29,341 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:29,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:29,341 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,348 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:29,348 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:29,349 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:29,349 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:29,349 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:29,350 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:29,592 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-02-20 23:40:29,592 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:40:29,592 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:40:29,592 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:29,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:40:29,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:40:29,598 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-02-20 23:40:29,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:29,669 INFO L225 Difference]: With dead ends: 43 [2022-02-20 23:40:29,669 INFO L226 Difference]: Without dead ends: 43 [2022-02-20 23:40:29,669 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 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:40:29,670 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 1 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 3 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 3 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 19 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:29,670 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1 Valid, 94 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 3 Invalid, 0 Unknown, 19 Unchecked, 0.0s Time] [2022-02-20 23:40:29,670 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-02-20 23:40:29,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2022-02-20 23:40:29,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:29,672 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,672 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,672 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:29,673 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-02-20 23:40:29,673 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 48 transitions. [2022-02-20 23:40:29,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:29,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:29,674 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 43 states. [2022-02-20 23:40:29,675 INFO L87 Difference]: Start difference. First operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 43 states. [2022-02-20 23:40:29,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:29,676 INFO L93 Difference]: Finished difference Result 43 states and 48 transitions. [2022-02-20 23:40:29,676 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 48 transitions. [2022-02-20 23:40:29,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:29,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:29,677 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:29,677 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:29,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 28 states have (on average 1.6785714285714286) internal successors, (47), 41 states have internal predecessors, (47), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 47 transitions. [2022-02-20 23:40:29,678 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 47 transitions. Word has length 6 [2022-02-20 23:40:29,678 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:29,678 INFO L470 AbstractCegarLoop]: Abstraction has 42 states and 47 transitions. [2022-02-20 23:40:29,679 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:29,679 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-02-20 23:40:29,679 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:40:29,680 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:29,680 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:29,695 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:40:29,888 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:40:29,889 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr14ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:29,889 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:29,889 INFO L85 PathProgramCache]: Analyzing trace with hash 1184052082, now seen corresponding path program 1 times [2022-02-20 23:40:29,889 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:29,890 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2120759565] [2022-02-20 23:40:29,890 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:29,890 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:29,890 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:29,891 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:40:29,893 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:40:29,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:29,920 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:40:29,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:29,926 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:29,986 INFO L290 TraceCheckUtils]: 0: Hoare triple {707#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {707#true} is VALID [2022-02-20 23:40:29,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {707#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {707#true} is VALID [2022-02-20 23:40:29,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {707#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {718#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:29,988 INFO L290 TraceCheckUtils]: 3: Hoare triple {718#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {722#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:29,988 INFO L290 TraceCheckUtils]: 4: Hoare triple {722#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {708#false} is VALID [2022-02-20 23:40:29,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {708#false} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {708#false} is VALID [2022-02-20 23:40:29,989 INFO L290 TraceCheckUtils]: 6: Hoare triple {708#false} assume !~bvslt32(sort_~pass~0#1, sort_~n#1); {708#false} is VALID [2022-02-20 23:40:29,989 INFO L290 TraceCheckUtils]: 7: Hoare triple {708#false} assume { :end_inline_sort } true;main_#res#1 := 0bv32;call ULTIMATE.dealloc(main_#t~malloc9#1.base, main_#t~malloc9#1.offset);havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {708#false} is VALID [2022-02-20 23:40:29,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {708#false} assume !(#valid == main_old_#valid#1); {708#false} is VALID [2022-02-20 23:40:29,989 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:40:29,989 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:29,990 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:29,990 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2120759565] [2022-02-20 23:40:29,990 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2120759565] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:29,990 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:29,990 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:29,990 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2038528725] [2022-02-20 23:40:29,991 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:29,991 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:29,991 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:29,991 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:30,002 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:30,002 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:30,003 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:30,003 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:30,003 INFO L87 Difference]: Start difference. First operand 42 states and 47 transitions. Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:30,229 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:30,229 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:30,229 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:30,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:30,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:40:30,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:40:30,231 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 47 transitions. [2022-02-20 23:40:30,298 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:30,299 INFO L225 Difference]: With dead ends: 44 [2022-02-20 23:40:30,299 INFO L226 Difference]: Without dead ends: 44 [2022-02-20 23:40:30,299 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 6 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:40:30,299 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 41 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 69 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:30,300 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 69 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:30,300 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-02-20 23:40:30,301 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 40. [2022-02-20 23:40:30,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:30,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,302 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,302 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:30,303 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:30,303 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:30,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:30,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:30,303 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 44 states. [2022-02-20 23:40:30,303 INFO L87 Difference]: Start difference. First operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 44 states. [2022-02-20 23:40:30,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:30,304 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:30,304 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:30,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:30,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:30,305 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:30,305 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:30,305 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 26 states have (on average 1.6923076923076923) internal successors, (44), 39 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 44 transitions. [2022-02-20 23:40:30,306 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 44 transitions. Word has length 9 [2022-02-20 23:40:30,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:30,307 INFO L470 AbstractCegarLoop]: Abstraction has 40 states and 44 transitions. [2022-02-20 23:40:30,307 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,307 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 44 transitions. [2022-02-20 23:40:30,307 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:40:30,307 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:30,307 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:30,314 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Ended with exit code 0 [2022-02-20 23:40:30,513 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:40:30,514 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:30,514 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:30,514 INFO L85 PathProgramCache]: Analyzing trace with hash -1091210163, now seen corresponding path program 1 times [2022-02-20 23:40:30,514 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:30,515 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [566400158] [2022-02-20 23:40:30,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:30,515 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:30,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:30,516 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:40:30,529 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:40:30,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:30,553 INFO L263 TraceCheckSpWp]: Trace formula consists of 36 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:40:30,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:30,559 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:30,624 INFO L290 TraceCheckUtils]: 0: Hoare triple {909#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {909#true} is VALID [2022-02-20 23:40:30,624 INFO L290 TraceCheckUtils]: 1: Hoare triple {909#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {909#true} is VALID [2022-02-20 23:40:30,625 INFO L290 TraceCheckUtils]: 2: Hoare triple {909#true} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {920#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:30,625 INFO L290 TraceCheckUtils]: 3: Hoare triple {920#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} is VALID [2022-02-20 23:40:30,626 INFO L290 TraceCheckUtils]: 4: Hoare triple {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} is VALID [2022-02-20 23:40:30,626 INFO L290 TraceCheckUtils]: 5: Hoare triple {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} is VALID [2022-02-20 23:40:30,627 INFO L290 TraceCheckUtils]: 6: Hoare triple {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} havoc main_#t~nondet11#1; {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} is VALID [2022-02-20 23:40:30,627 INFO L290 TraceCheckUtils]: 7: Hoare triple {924#(and (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {937#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)))} is VALID [2022-02-20 23:40:30,628 INFO L290 TraceCheckUtils]: 8: Hoare triple {937#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {910#false} is VALID [2022-02-20 23:40:30,628 INFO L290 TraceCheckUtils]: 9: Hoare triple {910#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {910#false} is VALID [2022-02-20 23:40:30,628 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:30,628 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:30,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {910#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {910#false} is VALID [2022-02-20 23:40:30,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {947#(not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {910#false} is VALID [2022-02-20 23:40:30,682 INFO L290 TraceCheckUtils]: 7: Hoare triple {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {947#(not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,682 INFO L290 TraceCheckUtils]: 6: Hoare triple {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} havoc main_#t~nondet11#1; {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,683 INFO L290 TraceCheckUtils]: 4: Hoare triple {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,683 INFO L290 TraceCheckUtils]: 3: Hoare triple {964#(not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {951#(not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {909#true} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {964#(not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:40:30,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {909#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {909#true} is VALID [2022-02-20 23:40:30,684 INFO L290 TraceCheckUtils]: 0: Hoare triple {909#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {909#true} is VALID [2022-02-20 23:40:30,685 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:30,685 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:30,685 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [566400158] [2022-02-20 23:40:30,685 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [566400158] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:30,685 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:40:30,685 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-02-20 23:40:30,686 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1764754985] [2022-02-20 23:40:30,686 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:30,686 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:30,686 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:30,686 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:30,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:30,710 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:40:30,710 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:30,711 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:40:30,711 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:40:30,711 INFO L87 Difference]: Start difference. First operand 40 states and 44 transitions. Second operand has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:31,340 INFO L93 Difference]: Finished difference Result 75 states and 81 transitions. [2022-02-20 23:40:31,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:40:31,341 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:31,341 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:31,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-02-20 23:40:31,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-02-20 23:40:31,345 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2022-02-20 23:40:31,435 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:31,436 INFO L225 Difference]: With dead ends: 75 [2022-02-20 23:40:31,436 INFO L226 Difference]: Without dead ends: 75 [2022-02-20 23:40:31,436 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:40:31,437 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 163 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 163 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:31,437 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [163 Valid, 170 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:31,437 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-02-20 23:40:31,439 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 46. [2022-02-20 23:40:31,439 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:31,439 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,439 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,439 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:31,441 INFO L93 Difference]: Finished difference Result 75 states and 81 transitions. [2022-02-20 23:40:31,441 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 81 transitions. [2022-02-20 23:40:31,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:31,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:31,441 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 75 states. [2022-02-20 23:40:31,441 INFO L87 Difference]: Start difference. First operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 75 states. [2022-02-20 23:40:31,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:31,443 INFO L93 Difference]: Finished difference Result 75 states and 81 transitions. [2022-02-20 23:40:31,443 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 81 transitions. [2022-02-20 23:40:31,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:31,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:31,443 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:31,443 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:31,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 32 states have (on average 1.5625) internal successors, (50), 45 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-02-20 23:40:31,444 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 10 [2022-02-20 23:40:31,444 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:31,444 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-02-20 23:40:31,445 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.125) internal successors, (17), 8 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:31,445 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-02-20 23:40:31,445 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:40:31,445 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:31,445 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:31,455 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:40:31,645 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:40:31,646 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:31,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:31,646 INFO L85 PathProgramCache]: Analyzing trace with hash -1900556789, now seen corresponding path program 1 times [2022-02-20 23:40:31,646 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:31,646 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [433734864] [2022-02-20 23:40:31,646 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:31,646 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:31,646 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:31,647 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:40:31,648 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2022-02-20 23:40:31,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:31,678 INFO L263 TraceCheckSpWp]: Trace formula consists of 36 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 23:40:31,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:31,683 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:31,732 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 8 treesize of output 7 [2022-02-20 23:40:31,886 INFO L290 TraceCheckUtils]: 0: Hoare triple {1244#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1244#true} is VALID [2022-02-20 23:40:31,887 INFO L290 TraceCheckUtils]: 1: Hoare triple {1244#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {1244#true} is VALID [2022-02-20 23:40:31,887 INFO L290 TraceCheckUtils]: 2: Hoare triple {1244#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {1255#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,888 INFO L290 TraceCheckUtils]: 3: Hoare triple {1255#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,892 INFO L290 TraceCheckUtils]: 4: Hoare triple {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,893 INFO L290 TraceCheckUtils]: 5: Hoare triple {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,893 INFO L290 TraceCheckUtils]: 6: Hoare triple {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} havoc main_#t~nondet11#1; {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {1259#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {1272#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:31,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {1272#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1276#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:31,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {1276#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {1245#false} is VALID [2022-02-20 23:40:31,896 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:31,896 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:32,289 INFO L290 TraceCheckUtils]: 9: Hoare triple {1280#(and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {1245#false} is VALID [2022-02-20 23:40:32,291 INFO L290 TraceCheckUtils]: 8: Hoare triple {1284#(or (not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1280#(and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:40:32,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {1284#(or (not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:32,618 INFO L290 TraceCheckUtils]: 6: Hoare triple {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} havoc main_#t~nondet11#1; {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:32,621 INFO L290 TraceCheckUtils]: 5: Hoare triple {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:32,623 INFO L290 TraceCheckUtils]: 4: Hoare triple {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:32,624 INFO L290 TraceCheckUtils]: 3: Hoare triple {1301#(or (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {1288#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:32,625 INFO L290 TraceCheckUtils]: 2: Hoare triple {1244#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {1301#(or (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} is VALID [2022-02-20 23:40:32,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {1244#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {1244#true} is VALID [2022-02-20 23:40:32,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {1244#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1244#true} is VALID [2022-02-20 23:40:32,625 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:32,625 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:32,626 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [433734864] [2022-02-20 23:40:32,626 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [433734864] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:32,626 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:40:32,626 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 9 [2022-02-20 23:40:32,626 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1911943470] [2022-02-20 23:40:32,626 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:32,626 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:32,626 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:32,626 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:33,060 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:40:33,060 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:40:33,060 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:33,061 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:40:33,061 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:40:33,061 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:35,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:35,655 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-02-20 23:40:35,655 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:40:35,655 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:35,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:35,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:35,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2022-02-20 23:40:35,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:35,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2022-02-20 23:40:35,658 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 87 transitions. [2022-02-20 23:40:36,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:36,165 INFO L225 Difference]: With dead ends: 83 [2022-02-20 23:40:36,165 INFO L226 Difference]: Without dead ends: 83 [2022-02-20 23:40:36,165 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=39, Invalid=71, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:40:36,165 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 79 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 25 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:36,166 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 171 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 144 Invalid, 0 Unknown, 25 Unchecked, 0.9s Time] [2022-02-20 23:40:36,166 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-02-20 23:40:36,169 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 54. [2022-02-20 23:40:36,171 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:36,171 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,171 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,171 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:36,173 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-02-20 23:40:36,174 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-02-20 23:40:36,174 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:36,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:36,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 83 states. [2022-02-20 23:40:36,179 INFO L87 Difference]: Start difference. First operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 83 states. [2022-02-20 23:40:36,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:36,184 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-02-20 23:40:36,184 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-02-20 23:40:36,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:36,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:36,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:36,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:36,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 40 states have (on average 1.5) internal successors, (60), 53 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 60 transitions. [2022-02-20 23:40:36,186 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 60 transitions. Word has length 10 [2022-02-20 23:40:36,191 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:36,191 INFO L470 AbstractCegarLoop]: Abstraction has 54 states and 60 transitions. [2022-02-20 23:40:36,191 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 10 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,191 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 60 transitions. [2022-02-20 23:40:36,192 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:36,192 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:36,192 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:36,201 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:40:36,399 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:40:36,399 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr14ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:36,399 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:36,400 INFO L85 PathProgramCache]: Analyzing trace with hash 363893197, now seen corresponding path program 1 times [2022-02-20 23:40:36,400 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:36,400 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [28105245] [2022-02-20 23:40:36,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:36,400 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:36,400 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:36,401 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:40:36,403 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:40:36,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:36,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 47 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:40:36,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:36,442 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:36,551 INFO L290 TraceCheckUtils]: 0: Hoare triple {1615#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1615#true} is VALID [2022-02-20 23:40:36,551 INFO L290 TraceCheckUtils]: 1: Hoare triple {1615#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {1623#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:40:36,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {1623#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {1623#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:40:36,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {1623#(= |#valid| |ULTIMATE.start_main_old_#valid#1|)} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,553 INFO L290 TraceCheckUtils]: 4: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,554 INFO L290 TraceCheckUtils]: 5: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,554 INFO L290 TraceCheckUtils]: 6: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} havoc main_#t~nondet11#1; {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,555 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,555 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,557 INFO L290 TraceCheckUtils]: 10: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} assume !~bvslt32(sort_~pass~0#1, sort_~n#1); {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} is VALID [2022-02-20 23:40:36,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {1630#(and (exists ((v_ArrVal_36 (_ BitVec 1))) (= |#valid| (store |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base| v_ArrVal_36))) (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |ULTIMATE.start_main_#t~malloc9#1.base|)))} assume { :end_inline_sort } true;main_#res#1 := 0bv32;call ULTIMATE.dealloc(main_#t~malloc9#1.base, main_#t~malloc9#1.offset);havoc main_#t~malloc9#1.base, main_#t~malloc9#1.offset; {1655#(exists ((|v_ULTIMATE.start_main_#t~malloc9#1.base_7| (_ BitVec 32))) (and (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_#t~malloc9#1.base_7|)) (= (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_#t~malloc9#1.base_7| (_ bv0 1)) |#valid|)))} is VALID [2022-02-20 23:40:36,558 INFO L290 TraceCheckUtils]: 12: Hoare triple {1655#(exists ((|v_ULTIMATE.start_main_#t~malloc9#1.base_7| (_ BitVec 32))) (and (= (_ bv0 1) (select |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_#t~malloc9#1.base_7|)) (= (store |ULTIMATE.start_main_old_#valid#1| |v_ULTIMATE.start_main_#t~malloc9#1.base_7| (_ bv0 1)) |#valid|)))} assume !(#valid == main_old_#valid#1); {1616#false} is VALID [2022-02-20 23:40:36,558 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:36,558 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:36,559 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:36,559 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [28105245] [2022-02-20 23:40:36,559 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [28105245] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:36,559 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:36,559 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:36,559 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1285168247] [2022-02-20 23:40:36,559 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:36,560 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:36,560 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:36,560 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,575 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:40:36,575 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:40:36,575 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:36,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:40:36,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:36,576 INFO L87 Difference]: Start difference. First operand 54 states and 60 transitions. Second operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:36,791 INFO L93 Difference]: Finished difference Result 61 states and 69 transitions. [2022-02-20 23:40:36,791 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:40:36,791 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:36,791 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:36,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-02-20 23:40:36,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-02-20 23:40:36,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 52 transitions. [2022-02-20 23:40:36,852 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:36,853 INFO L225 Difference]: With dead ends: 61 [2022-02-20 23:40:36,853 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 23:40:36,853 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:36,854 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 7 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 18 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:36,854 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 79 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 14 Invalid, 0 Unknown, 18 Unchecked, 0.0s Time] [2022-02-20 23:40:36,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 23:40:36,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 57. [2022-02-20 23:40:36,857 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:36,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,857 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,857 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:36,858 INFO L93 Difference]: Finished difference Result 59 states and 67 transitions. [2022-02-20 23:40:36,859 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-02-20 23:40:36,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:36,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:36,859 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 23:40:36,859 INFO L87 Difference]: Start difference. First operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 23:40:36,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:36,860 INFO L93 Difference]: Finished difference Result 59 states and 67 transitions. [2022-02-20 23:40:36,860 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-02-20 23:40:36,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:36,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:36,861 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:36,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:36,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 43 states have (on average 1.4883720930232558) internal successors, (64), 56 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 64 transitions. [2022-02-20 23:40:36,862 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 64 transitions. Word has length 13 [2022-02-20 23:40:36,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:36,862 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 64 transitions. [2022-02-20 23:40:36,862 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.25) internal successors, (13), 5 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:36,863 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 64 transitions. [2022-02-20 23:40:36,863 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:36,863 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:36,863 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:36,873 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:40:37,069 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:40:37,069 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:37,070 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:37,070 INFO L85 PathProgramCache]: Analyzing trace with hash 363893999, now seen corresponding path program 1 times [2022-02-20 23:40:37,070 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:37,070 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [983142495] [2022-02-20 23:40:37,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:37,070 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:37,070 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:37,071 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:40:37,072 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:40:37,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:37,104 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:40:37,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:37,114 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:37,166 INFO L290 TraceCheckUtils]: 0: Hoare triple {1894#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1894#true} is VALID [2022-02-20 23:40:37,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {1894#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {1894#true} is VALID [2022-02-20 23:40:37,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {1894#true} assume ~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32);main_~array_size~0#1 := 1bv32; {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,167 INFO L290 TraceCheckUtils]: 3: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,167 INFO L290 TraceCheckUtils]: 4: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,168 INFO L290 TraceCheckUtils]: 5: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,168 INFO L290 TraceCheckUtils]: 6: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} havoc main_#t~nondet11#1; {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,168 INFO L290 TraceCheckUtils]: 7: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} is VALID [2022-02-20 23:40:37,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {1905#(= |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {1927#(and (= |ULTIMATE.start_sort_~n#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))} is VALID [2022-02-20 23:40:37,169 INFO L290 TraceCheckUtils]: 10: Hoare triple {1927#(and (= |ULTIMATE.start_sort_~n#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {1895#false} is VALID [2022-02-20 23:40:37,170 INFO L290 TraceCheckUtils]: 11: Hoare triple {1895#false} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {1895#false} is VALID [2022-02-20 23:40:37,170 INFO L290 TraceCheckUtils]: 12: Hoare triple {1895#false} assume !(1bv1 == #valid[sort_~x#1.base]); {1895#false} is VALID [2022-02-20 23:40:37,170 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:37,170 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:37,170 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:37,170 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [983142495] [2022-02-20 23:40:37,170 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [983142495] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:37,170 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:37,170 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:37,170 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1300159270] [2022-02-20 23:40:37,171 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:37,171 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:37,171 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:37,171 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,183 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:40:37,183 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:37,183 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:37,183 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:37,184 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:37,184 INFO L87 Difference]: Start difference. First operand 57 states and 64 transitions. Second operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:37,433 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:40:37,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:37,434 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:37,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:37,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 23:40:37,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-02-20 23:40:37,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-02-20 23:40:37,483 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:37,484 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:40:37,484 INFO L226 Difference]: Without dead ends: 51 [2022-02-20 23:40:37,484 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:37,484 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 1 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:37,485 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1 Valid, 106 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:37,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-02-20 23:40:37,486 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2022-02-20 23:40:37,487 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:37,487 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,487 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,487 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:37,488 INFO L93 Difference]: Finished difference Result 51 states and 57 transitions. [2022-02-20 23:40:37,488 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 57 transitions. [2022-02-20 23:40:37,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:37,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:37,489 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 51 states. [2022-02-20 23:40:37,489 INFO L87 Difference]: Start difference. First operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 51 states. [2022-02-20 23:40:37,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:37,490 INFO L93 Difference]: Finished difference Result 51 states and 57 transitions. [2022-02-20 23:40:37,490 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 57 transitions. [2022-02-20 23:40:37,490 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:37,490 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:37,490 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:37,490 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:37,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 37 states have (on average 1.5405405405405406) internal successors, (57), 50 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 57 transitions. [2022-02-20 23:40:37,491 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 57 transitions. Word has length 13 [2022-02-20 23:40:37,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:37,492 INFO L470 AbstractCegarLoop]: Abstraction has 51 states and 57 transitions. [2022-02-20 23:40:37,492 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,492 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 57 transitions. [2022-02-20 23:40:37,492 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:37,492 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:37,492 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:37,498 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:40:37,695 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:40:37,695 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:37,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:37,696 INFO L85 PathProgramCache]: Analyzing trace with hash 1064958577, now seen corresponding path program 1 times [2022-02-20 23:40:37,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:37,696 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1831037672] [2022-02-20 23:40:37,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:37,696 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:37,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:37,697 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:40:37,698 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:40:37,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:37,731 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:40:37,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:37,736 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:37,748 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:40:37,787 INFO L290 TraceCheckUtils]: 0: Hoare triple {2150#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2150#true} is VALID [2022-02-20 23:40:37,787 INFO L290 TraceCheckUtils]: 1: Hoare triple {2150#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2150#true} is VALID [2022-02-20 23:40:37,787 INFO L290 TraceCheckUtils]: 2: Hoare triple {2150#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {2150#true} is VALID [2022-02-20 23:40:37,788 INFO L290 TraceCheckUtils]: 3: Hoare triple {2150#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,789 INFO L290 TraceCheckUtils]: 4: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,789 INFO L290 TraceCheckUtils]: 6: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} havoc main_#t~nondet11#1; {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,790 INFO L290 TraceCheckUtils]: 8: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {2164#(= (select |#valid| |ULTIMATE.start_main_~numbers~0#1.base|) (_ bv1 1))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,791 INFO L290 TraceCheckUtils]: 10: Hoare triple {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:40:37,792 INFO L290 TraceCheckUtils]: 12: Hoare triple {2183#(= (select |#valid| |ULTIMATE.start_sort_~x#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[sort_~x#1.base]); {2151#false} is VALID [2022-02-20 23:40:37,792 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:37,792 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:37,792 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:37,792 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1831037672] [2022-02-20 23:40:37,792 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1831037672] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:37,792 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:37,792 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:37,792 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2089651469] [2022-02-20 23:40:37,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:37,793 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:37,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:37,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:37,809 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:40:37,810 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:37,810 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:37,810 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:37,810 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:37,810 INFO L87 Difference]: Start difference. First operand 51 states and 57 transitions. Second operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:38,025 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-02-20 23:40:38,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:38,026 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:38,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:38,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 41 transitions. [2022-02-20 23:40:38,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 41 transitions. [2022-02-20 23:40:38,027 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 41 transitions. [2022-02-20 23:40:38,070 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:38,071 INFO L225 Difference]: With dead ends: 45 [2022-02-20 23:40:38,071 INFO L226 Difference]: Without dead ends: 45 [2022-02-20 23:40:38,071 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:38,071 INFO L933 BasicCegarLoop]: 19 mSDtfsCounter, 44 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 25 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:38,071 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 25 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:38,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-02-20 23:40:38,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2022-02-20 23:40:38,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:38,073 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,073 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,073 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:38,074 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-02-20 23:40:38,074 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-02-20 23:40:38,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:38,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:38,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 45 states. [2022-02-20 23:40:38,075 INFO L87 Difference]: Start difference. First operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 45 states. [2022-02-20 23:40:38,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:38,082 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-02-20 23:40:38,082 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-02-20 23:40:38,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:38,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:38,083 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:38,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:38,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 37 states have (on average 1.3783783783783783) internal successors, (51), 44 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 51 transitions. [2022-02-20 23:40:38,084 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 51 transitions. Word has length 13 [2022-02-20 23:40:38,084 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:38,084 INFO L470 AbstractCegarLoop]: Abstraction has 45 states and 51 transitions. [2022-02-20 23:40:38,084 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:38,084 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 51 transitions. [2022-02-20 23:40:38,084 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:38,085 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:38,085 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:38,093 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:40:38,291 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:40:38,291 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:38,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:38,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1064958578, now seen corresponding path program 1 times [2022-02-20 23:40:38,292 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:38,292 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [358224391] [2022-02-20 23:40:38,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:38,292 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:38,292 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:38,293 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:40:38,296 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:40:38,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:38,354 INFO L263 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:40:38,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:38,359 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:38,384 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 8 treesize of output 7 [2022-02-20 23:40:38,647 INFO L290 TraceCheckUtils]: 0: Hoare triple {2374#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2374#true} is VALID [2022-02-20 23:40:38,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {2374#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2374#true} is VALID [2022-02-20 23:40:38,648 INFO L290 TraceCheckUtils]: 2: Hoare triple {2374#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {2385#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:40:38,649 INFO L290 TraceCheckUtils]: 3: Hoare triple {2385#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2389#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:40:38,650 INFO L290 TraceCheckUtils]: 4: Hoare triple {2389#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2389#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:40:38,650 INFO L290 TraceCheckUtils]: 5: Hoare triple {2389#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,651 INFO L290 TraceCheckUtils]: 6: Hoare triple {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} havoc main_#t~nondet11#1; {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,652 INFO L290 TraceCheckUtils]: 8: Hoare triple {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,653 INFO L290 TraceCheckUtils]: 9: Hoare triple {2396#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2409#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:40:38,653 INFO L290 TraceCheckUtils]: 10: Hoare triple {2409#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2413#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:40:38,654 INFO L290 TraceCheckUtils]: 11: Hoare triple {2413#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2413#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:40:38,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {2413#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {2375#false} is VALID [2022-02-20 23:40:38,654 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:38,655 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:38,966 INFO L290 TraceCheckUtils]: 12: Hoare triple {2420#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {2375#false} is VALID [2022-02-20 23:40:38,966 INFO L290 TraceCheckUtils]: 11: Hoare triple {2420#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2420#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:40:38,967 INFO L290 TraceCheckUtils]: 10: Hoare triple {2427#(and (bvule |ULTIMATE.start_sort_~x#1.offset| (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2420#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:40:38,968 INFO L290 TraceCheckUtils]: 9: Hoare triple {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2427#(and (bvule |ULTIMATE.start_sort_~x#1.offset| (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:40:38,968 INFO L290 TraceCheckUtils]: 8: Hoare triple {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,969 INFO L290 TraceCheckUtils]: 6: Hoare triple {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} havoc main_#t~nondet11#1; {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,971 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#(or (and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2431#(and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)))} is VALID [2022-02-20 23:40:38,973 INFO L290 TraceCheckUtils]: 4: Hoare triple {2444#(or (and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2444#(or (and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:38,974 INFO L290 TraceCheckUtils]: 3: Hoare triple {2374#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2444#(or (and (bvule |ULTIMATE.start_main_~numbers~0#1.offset| (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:38,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {2374#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {2374#true} is VALID [2022-02-20 23:40:38,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {2374#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2374#true} is VALID [2022-02-20 23:40:38,974 INFO L290 TraceCheckUtils]: 0: Hoare triple {2374#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2374#true} is VALID [2022-02-20 23:40:38,974 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:38,974 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:38,974 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [358224391] [2022-02-20 23:40:38,975 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [358224391] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:38,975 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:40:38,975 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 10 [2022-02-20 23:40:38,975 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1368002658] [2022-02-20 23:40:38,975 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:38,976 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:38,976 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:38,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,004 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:40:39,004 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:40:39,005 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:39,005 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:40:39,005 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:40:39,005 INFO L87 Difference]: Start difference. First operand 45 states and 51 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:39,667 INFO L93 Difference]: Finished difference Result 51 states and 58 transitions. [2022-02-20 23:40:39,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:40:39,668 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:39,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:39,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 46 transitions. [2022-02-20 23:40:39,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 46 transitions. [2022-02-20 23:40:39,669 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 46 transitions. [2022-02-20 23:40:39,775 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:39,775 INFO L225 Difference]: With dead ends: 51 [2022-02-20 23:40:39,775 INFO L226 Difference]: Without dead ends: 51 [2022-02-20 23:40:39,776 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:40:39,776 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 102 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 102 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:39,776 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [102 Valid, 41 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:40:39,777 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-02-20 23:40:39,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 45. [2022-02-20 23:40:39,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:39,778 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,778 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,778 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:39,779 INFO L93 Difference]: Finished difference Result 51 states and 58 transitions. [2022-02-20 23:40:39,779 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 58 transitions. [2022-02-20 23:40:39,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:39,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:39,779 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 51 states. [2022-02-20 23:40:39,784 INFO L87 Difference]: Start difference. First operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 51 states. [2022-02-20 23:40:39,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:39,785 INFO L93 Difference]: Finished difference Result 51 states and 58 transitions. [2022-02-20 23:40:39,785 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 58 transitions. [2022-02-20 23:40:39,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:39,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:39,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:39,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:39,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 39 states have (on average 1.3333333333333333) internal successors, (52), 44 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 52 transitions. [2022-02-20 23:40:39,787 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 52 transitions. Word has length 13 [2022-02-20 23:40:39,787 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:39,787 INFO L470 AbstractCegarLoop]: Abstraction has 45 states and 52 transitions. [2022-02-20 23:40:39,787 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 6 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:39,787 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 52 transitions. [2022-02-20 23:40:39,788 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:40:39,788 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:39,788 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:39,803 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:40:39,994 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:40:39,995 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:39,995 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:39,995 INFO L85 PathProgramCache]: Analyzing trace with hash -1346022463, now seen corresponding path program 1 times [2022-02-20 23:40:39,995 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:39,995 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [946331148] [2022-02-20 23:40:39,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:39,995 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:39,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:39,996 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:40:39,997 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Waiting until timeout for monitored process [2022-02-20 23:40:40,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:40,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 51 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:40:40,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:40,044 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:40,069 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 8 treesize of output 7 [2022-02-20 23:40:40,273 INFO L290 TraceCheckUtils]: 0: Hoare triple {2661#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2661#true} is VALID [2022-02-20 23:40:40,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {2661#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2661#true} is VALID [2022-02-20 23:40:40,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {2661#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {2672#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,275 INFO L290 TraceCheckUtils]: 3: Hoare triple {2672#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,275 INFO L290 TraceCheckUtils]: 4: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,276 INFO L290 TraceCheckUtils]: 6: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} havoc main_#t~nondet11#1; {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,277 INFO L290 TraceCheckUtils]: 7: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,277 INFO L290 TraceCheckUtils]: 8: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:40,278 INFO L290 TraceCheckUtils]: 9: Hoare triple {2676#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2695#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvslt |ULTIMATE.start_sort_~n#1| (_ bv1 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:40,279 INFO L290 TraceCheckUtils]: 10: Hoare triple {2695#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvslt |ULTIMATE.start_sort_~n#1| (_ bv1 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:40,280 INFO L290 TraceCheckUtils]: 11: Hoare triple {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:40,282 INFO L290 TraceCheckUtils]: 12: Hoare triple {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:40,283 INFO L290 TraceCheckUtils]: 13: Hoare triple {2699#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt (_ bv1 32) |ULTIMATE.start_sort_~n#1|) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {2662#false} is VALID [2022-02-20 23:40:40,283 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:40,283 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:40:40,284 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:40,284 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [946331148] [2022-02-20 23:40:40,284 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [946331148] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:40,284 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:40,284 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:40:40,284 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1176854832] [2022-02-20 23:40:40,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:40,285 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:40:40,285 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:40,285 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:40,303 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:40:40,303 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:40,303 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:40:40,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:40:40,303 INFO L87 Difference]: Start difference. First operand 45 states and 52 transitions. Second operand has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:40,655 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2022-02-20 23:40:40,655 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:40:40,656 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:40:40,656 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:40,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2022-02-20 23:40:40,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2022-02-20 23:40:40,656 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 39 transitions. [2022-02-20 23:40:40,706 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:40,707 INFO L225 Difference]: With dead ends: 49 [2022-02-20 23:40:40,707 INFO L226 Difference]: Without dead ends: 49 [2022-02-20 23:40:40,707 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:40:40,708 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 13 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 20 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:40,708 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 66 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 25 Invalid, 0 Unknown, 20 Unchecked, 0.1s Time] [2022-02-20 23:40:40,708 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-02-20 23:40:40,709 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2022-02-20 23:40:40,709 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:40,709 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,709 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,710 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:40,710 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2022-02-20 23:40:40,710 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2022-02-20 23:40:40,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:40,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:40,710 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 49 states. [2022-02-20 23:40:40,711 INFO L87 Difference]: Start difference. First operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 49 states. [2022-02-20 23:40:40,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:40,725 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2022-02-20 23:40:40,725 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2022-02-20 23:40:40,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:40,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:40,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:40,726 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:40,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 48 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 57 transitions. [2022-02-20 23:40:40,726 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 57 transitions. Word has length 14 [2022-02-20 23:40:40,726 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:40,726 INFO L470 AbstractCegarLoop]: Abstraction has 49 states and 57 transitions. [2022-02-20 23:40:40,726 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.8) internal successors, (14), 6 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:40,727 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2022-02-20 23:40:40,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:40:40,727 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:40,727 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:40,739 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:40:40,933 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:40:40,933 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:40,933 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:40,933 INFO L85 PathProgramCache]: Analyzing trace with hash -1570446787, now seen corresponding path program 1 times [2022-02-20 23:40:40,934 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:40,934 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2062982057] [2022-02-20 23:40:40,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:40,934 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:40,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:40,935 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:40:40,942 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Waiting until timeout for monitored process [2022-02-20 23:40:40,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:40,979 INFO L263 TraceCheckSpWp]: Trace formula consists of 55 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:40:40,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:40,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:41,019 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 8 treesize of output 7 [2022-02-20 23:40:41,292 INFO L290 TraceCheckUtils]: 0: Hoare triple {2908#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2908#true} is VALID [2022-02-20 23:40:41,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {2908#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2908#true} is VALID [2022-02-20 23:40:41,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {2908#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {2919#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:40:41,294 INFO L290 TraceCheckUtils]: 3: Hoare triple {2919#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,294 INFO L290 TraceCheckUtils]: 4: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,295 INFO L290 TraceCheckUtils]: 5: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,295 INFO L290 TraceCheckUtils]: 6: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} havoc main_#t~nondet11#1; {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,296 INFO L290 TraceCheckUtils]: 8: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,296 INFO L290 TraceCheckUtils]: 9: Hoare triple {2923#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,297 INFO L290 TraceCheckUtils]: 10: Hoare triple {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,297 INFO L290 TraceCheckUtils]: 11: Hoare triple {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,298 INFO L290 TraceCheckUtils]: 12: Hoare triple {2942#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {2952#(and (= (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~pass~0#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,298 INFO L290 TraceCheckUtils]: 13: Hoare triple {2952#(and (= (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~pass~0#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2956#(and (= (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~pass~0#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:40:41,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {2956#(and (= (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~pass~0#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2960#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (_ bv4294967294 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:41,300 INFO L290 TraceCheckUtils]: 15: Hoare triple {2960#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (_ bv4294967294 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {2960#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (_ bv4294967294 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:40:41,301 INFO L290 TraceCheckUtils]: 16: Hoare triple {2960#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (_ bv4294967294 32))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {2909#false} is VALID [2022-02-20 23:40:41,301 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:41,301 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:42,043 INFO L290 TraceCheckUtils]: 16: Hoare triple {2967#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {2909#false} is VALID [2022-02-20 23:40:42,044 INFO L290 TraceCheckUtils]: 15: Hoare triple {2967#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {2967#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:40:42,046 INFO L290 TraceCheckUtils]: 14: Hoare triple {2974#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2967#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:40:42,048 INFO L290 TraceCheckUtils]: 13: Hoare triple {2978#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2974#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} is VALID [2022-02-20 23:40:42,118 INFO L290 TraceCheckUtils]: 12: Hoare triple {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {2978#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} is VALID [2022-02-20 23:40:42,120 INFO L290 TraceCheckUtils]: 11: Hoare triple {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:40:42,122 INFO L290 TraceCheckUtils]: 10: Hoare triple {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:40:42,123 INFO L290 TraceCheckUtils]: 9: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {2982#(or (not (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg (bvadd |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)))))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:40:42,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,127 INFO L290 TraceCheckUtils]: 6: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} havoc main_#t~nondet11#1; {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,130 INFO L290 TraceCheckUtils]: 5: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,132 INFO L290 TraceCheckUtils]: 4: Hoare triple {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,133 INFO L290 TraceCheckUtils]: 3: Hoare triple {3011#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {2992#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:42,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {2908#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {3011#(or (not (bvslt (_ bv0 32) (bvadd (_ bv4294967294 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} is VALID [2022-02-20 23:40:42,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {2908#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {2908#true} is VALID [2022-02-20 23:40:42,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {2908#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {2908#true} is VALID [2022-02-20 23:40:42,135 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:42,135 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:42,135 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2062982057] [2022-02-20 23:40:42,135 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2062982057] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:42,135 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:40:42,135 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2022-02-20 23:40:42,135 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1327580102] [2022-02-20 23:40:42,135 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:42,136 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:40:42,136 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:42,136 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:42,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:42,280 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:40:42,280 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:42,280 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:40:42,280 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=140, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:40:42,280 INFO L87 Difference]: Start difference. First operand 49 states and 57 transitions. Second operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:47,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:47,520 INFO L93 Difference]: Finished difference Result 140 states and 163 transitions. [2022-02-20 23:40:47,520 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:40:47,520 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:40:47,520 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:47,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:47,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 136 transitions. [2022-02-20 23:40:47,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:47,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 136 transitions. [2022-02-20 23:40:47,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 136 transitions. [2022-02-20 23:40:48,069 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:48,071 INFO L225 Difference]: With dead ends: 140 [2022-02-20 23:40:48,071 INFO L226 Difference]: Without dead ends: 140 [2022-02-20 23:40:48,071 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 129 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=214, Invalid=488, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:40:48,071 INFO L933 BasicCegarLoop]: 19 mSDtfsCounter, 297 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 297 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 280 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 34 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:48,072 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [297 Valid, 169 Invalid, 280 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 204 Invalid, 0 Unknown, 34 Unchecked, 1.4s Time] [2022-02-20 23:40:48,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 140 states. [2022-02-20 23:40:48,076 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 140 to 101. [2022-02-20 23:40:48,076 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:48,076 INFO L82 GeneralOperation]: Start isEquivalent. First operand 140 states. Second operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:48,077 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:48,077 INFO L87 Difference]: Start difference. First operand 140 states. Second operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:48,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:48,079 INFO L93 Difference]: Finished difference Result 140 states and 163 transitions. [2022-02-20 23:40:48,079 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 163 transitions. [2022-02-20 23:40:48,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:48,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:48,079 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 140 states. [2022-02-20 23:40:48,079 INFO L87 Difference]: Start difference. First operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 140 states. [2022-02-20 23:40:48,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:48,081 INFO L93 Difference]: Finished difference Result 140 states and 163 transitions. [2022-02-20 23:40:48,081 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 163 transitions. [2022-02-20 23:40:48,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:48,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:48,082 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:48,082 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:48,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 95 states have (on average 1.368421052631579) internal successors, (130), 100 states have internal predecessors, (130), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:48,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 130 transitions. [2022-02-20 23:40:48,088 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 130 transitions. Word has length 17 [2022-02-20 23:40:48,088 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:48,089 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 130 transitions. [2022-02-20 23:40:48,089 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 14 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:48,089 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 130 transitions. [2022-02-20 23:40:48,089 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:40:48,089 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:48,089 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 1, 1, 1, 1, 1] [2022-02-20 23:40:48,096 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Ended with exit code 0 [2022-02-20 23:40:48,296 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:40:48,296 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:40:48,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:48,296 INFO L85 PathProgramCache]: Analyzing trace with hash -1817992175, now seen corresponding path program 2 times [2022-02-20 23:40:48,297 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:40:48,297 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [46145336] [2022-02-20 23:40:48,297 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:40:48,297 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:40:48,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:40:48,298 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:40:48,299 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2022-02-20 23:40:48,365 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:40:48,365 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:40:48,367 INFO L263 TraceCheckSpWp]: Trace formula consists of 62 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:40:48,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:48,373 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:48,400 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 8 treesize of output 7 [2022-02-20 23:40:48,721 INFO L290 TraceCheckUtils]: 0: Hoare triple {3567#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {3567#true} is VALID [2022-02-20 23:40:48,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {3567#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {3567#true} is VALID [2022-02-20 23:40:48,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {3567#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {3578#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,723 INFO L290 TraceCheckUtils]: 3: Hoare triple {3578#(and (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,723 INFO L290 TraceCheckUtils]: 4: Hoare triple {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,724 INFO L290 TraceCheckUtils]: 5: Hoare triple {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,725 INFO L290 TraceCheckUtils]: 6: Hoare triple {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} havoc main_#t~nondet11#1; {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,725 INFO L290 TraceCheckUtils]: 7: Hoare triple {3582#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,727 INFO L290 TraceCheckUtils]: 10: Hoare triple {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} havoc main_#t~nondet11#1; {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,727 INFO L290 TraceCheckUtils]: 11: Hoare triple {3595#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,728 INFO L290 TraceCheckUtils]: 12: Hoare triple {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,729 INFO L290 TraceCheckUtils]: 14: Hoare triple {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} havoc main_#t~nondet11#1; {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,729 INFO L290 TraceCheckUtils]: 15: Hoare triple {3608#(and (= (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv4294967294 32)) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3621#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} is VALID [2022-02-20 23:40:48,731 INFO L290 TraceCheckUtils]: 16: Hoare triple {3621#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))) (not (bvslt |ULTIMATE.start_main_~array_size~0#1| (_ bv1 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3625#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv3 32)))} is VALID [2022-02-20 23:40:48,731 INFO L290 TraceCheckUtils]: 17: Hoare triple {3625#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~i~1#1| (_ bv3 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {3568#false} is VALID [2022-02-20 23:40:48,732 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:48,732 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:49,498 INFO L290 TraceCheckUtils]: 17: Hoare triple {3629#(and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))), #length[main_~numbers~0#1.base]) && ~bvule32(~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), ~bvadd32(4bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1))))) && ~bvule32(0bv32, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)))); {3568#false} is VALID [2022-02-20 23:40:49,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {3633#(or (not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3629#(and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:40:49,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3633#(or (not (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|))))} is VALID [2022-02-20 23:40:49,905 INFO L290 TraceCheckUtils]: 14: Hoare triple {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} havoc main_#t~nondet11#1; {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:49,908 INFO L290 TraceCheckUtils]: 13: Hoare triple {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:49,910 INFO L290 TraceCheckUtils]: 12: Hoare triple {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:50,653 INFO L290 TraceCheckUtils]: 11: Hoare triple {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3637#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:50,657 INFO L290 TraceCheckUtils]: 10: Hoare triple {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} havoc main_#t~nondet11#1; {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:50,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:50,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,283 INFO L290 TraceCheckUtils]: 7: Hoare triple {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {3650#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv2 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32))) (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,285 INFO L290 TraceCheckUtils]: 6: Hoare triple {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} havoc main_#t~nondet11#1; {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,290 INFO L290 TraceCheckUtils]: 4: Hoare triple {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,291 INFO L290 TraceCheckUtils]: 3: Hoare triple {3676#(or (not (bvslt (_ bv3 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvule (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {3663#(or (not (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv3 32)) |ULTIMATE.start_main_~array_size~0#1|)) (and (bvule (bvadd (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|)) (bvule (bvadd (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))))} is VALID [2022-02-20 23:40:51,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {3567#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {3676#(or (not (bvslt (_ bv3 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvule (_ bv16 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} is VALID [2022-02-20 23:40:51,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {3567#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {3567#true} is VALID [2022-02-20 23:40:51,292 INFO L290 TraceCheckUtils]: 0: Hoare triple {3567#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {3567#true} is VALID [2022-02-20 23:40:51,292 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:51,292 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:40:51,292 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [46145336] [2022-02-20 23:40:51,293 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [46145336] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:51,293 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:40:51,293 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 13 [2022-02-20 23:40:51,293 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2120711381] [2022-02-20 23:40:51,293 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:51,293 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:40:51,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:51,293 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:53,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:53,035 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:40:53,035 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:40:53,035 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:40:53,035 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=128, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:40:53,035 INFO L87 Difference]: Start difference. First operand 101 states and 130 transitions. Second operand has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,764 INFO L93 Difference]: Finished difference Result 527 states and 690 transitions. [2022-02-20 23:40:58,764 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:40:58,764 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:40:58,765 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:58,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 184 transitions. [2022-02-20 23:40:58,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 184 transitions. [2022-02-20 23:40:58,772 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 184 transitions. [2022-02-20 23:41:03,715 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 184 edges. 182 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:03,728 INFO L225 Difference]: With dead ends: 527 [2022-02-20 23:41:03,728 INFO L226 Difference]: Without dead ends: 527 [2022-02-20 23:41:03,729 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=144, Invalid=318, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:41:03,729 INFO L933 BasicCegarLoop]: 43 mSDtfsCounter, 605 mSDsluCounter, 216 mSDsCounter, 0 mSdLazyCounter, 265 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 605 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 332 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 265 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 51 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:03,730 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [605 Valid, 259 Invalid, 332 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 265 Invalid, 0 Unknown, 51 Unchecked, 1.5s Time] [2022-02-20 23:41:03,731 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 527 states. [2022-02-20 23:41:03,740 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 527 to 117. [2022-02-20 23:41:03,740 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:03,740 INFO L82 GeneralOperation]: Start isEquivalent. First operand 527 states. Second operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:03,740 INFO L74 IsIncluded]: Start isIncluded. First operand 527 states. Second operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:03,741 INFO L87 Difference]: Start difference. First operand 527 states. Second operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:03,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:03,751 INFO L93 Difference]: Finished difference Result 527 states and 690 transitions. [2022-02-20 23:41:03,752 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 690 transitions. [2022-02-20 23:41:03,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:03,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:03,754 INFO L74 IsIncluded]: Start isIncluded. First operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 527 states. [2022-02-20 23:41:03,754 INFO L87 Difference]: Start difference. First operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 527 states. [2022-02-20 23:41:03,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:03,765 INFO L93 Difference]: Finished difference Result 527 states and 690 transitions. [2022-02-20 23:41:03,766 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 690 transitions. [2022-02-20 23:41:03,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:03,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:03,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:03,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:03,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 117 states, 111 states have (on average 1.3513513513513513) internal successors, (150), 116 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:03,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 117 states to 117 states and 150 transitions. [2022-02-20 23:41:03,768 INFO L78 Accepts]: Start accepts. Automaton has 117 states and 150 transitions. Word has length 18 [2022-02-20 23:41:03,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:03,768 INFO L470 AbstractCegarLoop]: Abstraction has 117 states and 150 transitions. [2022-02-20 23:41:03,769 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 14 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:03,769 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 150 transitions. [2022-02-20 23:41:03,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:41:03,769 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:03,769 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:03,776 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:03,976 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:03,976 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:03,977 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:03,977 INFO L85 PathProgramCache]: Analyzing trace with hash -511718013, now seen corresponding path program 1 times [2022-02-20 23:41:03,977 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:03,977 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2140845524] [2022-02-20 23:41:03,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:03,977 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:03,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:03,978 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:03,979 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2022-02-20 23:41:04,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:04,022 INFO L263 TraceCheckSpWp]: Trace formula consists of 63 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:41:04,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:04,027 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:04,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {5399#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {5399#true} is VALID [2022-02-20 23:41:04,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {5399#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {5399#true} is VALID [2022-02-20 23:41:04,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {5399#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {5399#true} is VALID [2022-02-20 23:41:04,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {5399#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,138 INFO L290 TraceCheckUtils]: 4: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,139 INFO L290 TraceCheckUtils]: 5: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,139 INFO L290 TraceCheckUtils]: 6: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} havoc main_#t~nondet11#1; {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,139 INFO L290 TraceCheckUtils]: 7: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {5413#(= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {5432#(= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:41:04,140 INFO L290 TraceCheckUtils]: 10: Hoare triple {5432#(= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,141 INFO L290 TraceCheckUtils]: 11: Hoare triple {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,141 INFO L290 TraceCheckUtils]: 12: Hoare triple {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,142 INFO L290 TraceCheckUtils]: 13: Hoare triple {5436#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume ~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem6#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L518 {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,143 INFO L290 TraceCheckUtils]: 16: Hoare triple {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} sort_~temp~0#1 := sort_#t~mem6#1;havoc sort_#t~mem6#1; {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:04,146 INFO L290 TraceCheckUtils]: 17: Hoare triple {5446#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {5400#false} is VALID [2022-02-20 23:41:04,146 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:41:04,146 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:41:04,146 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:04,146 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2140845524] [2022-02-20 23:41:04,146 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2140845524] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:04,146 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:04,146 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:41:04,146 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1831279463] [2022-02-20 23:41:04,146 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:04,147 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:04,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:04,147 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,174 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:41:04,174 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:41:04,174 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:04,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:41:04,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:41:04,174 INFO L87 Difference]: Start difference. First operand 117 states and 150 transitions. Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:04,421 INFO L93 Difference]: Finished difference Result 146 states and 180 transitions. [2022-02-20 23:41:04,421 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:41:04,422 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:04,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:04,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-02-20 23:41:04,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-02-20 23:41:04,423 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 54 transitions. [2022-02-20 23:41:04,493 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:04,495 INFO L225 Difference]: With dead ends: 146 [2022-02-20 23:41:04,495 INFO L226 Difference]: Without dead ends: 146 [2022-02-20 23:41:04,496 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:41:04,496 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 81 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 81 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:04,496 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [81 Valid, 51 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:41:04,497 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-02-20 23:41:04,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 116. [2022-02-20 23:41:04,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:04,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,498 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,499 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:04,500 INFO L93 Difference]: Finished difference Result 146 states and 180 transitions. [2022-02-20 23:41:04,500 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 180 transitions. [2022-02-20 23:41:04,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:04,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:04,501 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 146 states. [2022-02-20 23:41:04,501 INFO L87 Difference]: Start difference. First operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 146 states. [2022-02-20 23:41:04,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:04,503 INFO L93 Difference]: Finished difference Result 146 states and 180 transitions. [2022-02-20 23:41:04,503 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 180 transitions. [2022-02-20 23:41:04,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:04,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:04,504 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:04,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:04,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 110 states have (on average 1.3272727272727274) internal successors, (146), 115 states have internal predecessors, (146), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 146 transitions. [2022-02-20 23:41:04,505 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 146 transitions. Word has length 18 [2022-02-20 23:41:04,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:04,505 INFO L470 AbstractCegarLoop]: Abstraction has 116 states and 146 transitions. [2022-02-20 23:41:04,506 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.6) internal successors, (18), 6 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:04,506 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 146 transitions. [2022-02-20 23:41:04,506 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:41:04,506 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:04,506 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:04,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:04,712 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:04,713 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:04,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:04,713 INFO L85 PathProgramCache]: Analyzing trace with hash -511225436, now seen corresponding path program 1 times [2022-02-20 23:41:04,713 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:04,713 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [715610888] [2022-02-20 23:41:04,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:04,713 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:04,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:04,715 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:04,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2022-02-20 23:41:04,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:04,760 INFO L263 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:41:04,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:04,766 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:04,784 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 8 treesize of output 7 [2022-02-20 23:41:06,133 INFO L290 TraceCheckUtils]: 0: Hoare triple {6018#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {6018#true} is VALID [2022-02-20 23:41:06,133 INFO L290 TraceCheckUtils]: 1: Hoare triple {6018#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {6018#true} is VALID [2022-02-20 23:41:06,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {6018#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {6029#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:41:06,135 INFO L290 TraceCheckUtils]: 3: Hoare triple {6029#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,135 INFO L290 TraceCheckUtils]: 4: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,136 INFO L290 TraceCheckUtils]: 5: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,136 INFO L290 TraceCheckUtils]: 6: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} havoc main_#t~nondet11#1; {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,138 INFO L290 TraceCheckUtils]: 9: Hoare triple {6033#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {6052#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,138 INFO L290 TraceCheckUtils]: 10: Hoare triple {6052#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,138 INFO L290 TraceCheckUtils]: 11: Hoare triple {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,139 INFO L290 TraceCheckUtils]: 12: Hoare triple {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,140 INFO L290 TraceCheckUtils]: 13: Hoare triple {6056#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {6066#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,140 INFO L290 TraceCheckUtils]: 14: Hoare triple {6066#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {6066#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,141 INFO L290 TraceCheckUtils]: 15: Hoare triple {6066#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {6073#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,141 INFO L290 TraceCheckUtils]: 16: Hoare triple {6073#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6073#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:06,143 INFO L290 TraceCheckUtils]: 17: Hoare triple {6073#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {6019#false} is VALID [2022-02-20 23:41:06,143 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:41:06,143 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:06,727 INFO L290 TraceCheckUtils]: 17: Hoare triple {6080#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {6019#false} is VALID [2022-02-20 23:41:06,728 INFO L290 TraceCheckUtils]: 16: Hoare triple {6080#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6080#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:07,179 INFO L290 TraceCheckUtils]: 15: Hoare triple {6087#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {6080#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:07,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {6087#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {6087#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:07,183 INFO L290 TraceCheckUtils]: 13: Hoare triple {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {6087#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:07,183 INFO L290 TraceCheckUtils]: 12: Hoare triple {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:07,184 INFO L290 TraceCheckUtils]: 11: Hoare triple {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:07,184 INFO L290 TraceCheckUtils]: 10: Hoare triple {6104#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {6094#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:07,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {6104#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:41:07,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,186 INFO L290 TraceCheckUtils]: 6: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} havoc main_#t~nondet11#1; {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,187 INFO L290 TraceCheckUtils]: 4: Hoare triple {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,187 INFO L290 TraceCheckUtils]: 3: Hoare triple {6018#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {6108#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:07,187 INFO L290 TraceCheckUtils]: 2: Hoare triple {6018#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {6018#true} is VALID [2022-02-20 23:41:07,187 INFO L290 TraceCheckUtils]: 1: Hoare triple {6018#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {6018#true} is VALID [2022-02-20 23:41:07,187 INFO L290 TraceCheckUtils]: 0: Hoare triple {6018#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {6018#true} is VALID [2022-02-20 23:41:07,188 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:41:07,188 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:07,188 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [715610888] [2022-02-20 23:41:07,188 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [715610888] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:07,188 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:41:07,188 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 12 [2022-02-20 23:41:07,188 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1177818531] [2022-02-20 23:41:07,188 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:07,188 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:07,188 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:07,189 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:07,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:07,688 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:41:07,689 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:07,690 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:41:07,690 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:41:07,690 INFO L87 Difference]: Start difference. First operand 116 states and 146 transitions. Second operand has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:08,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:08,816 INFO L93 Difference]: Finished difference Result 132 states and 167 transitions. [2022-02-20 23:41:08,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:41:08,817 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:08,817 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:08,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:08,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 58 transitions. [2022-02-20 23:41:08,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:08,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 58 transitions. [2022-02-20 23:41:08,818 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 58 transitions. [2022-02-20 23:41:09,820 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:09,821 INFO L225 Difference]: With dead ends: 132 [2022-02-20 23:41:09,821 INFO L226 Difference]: Without dead ends: 132 [2022-02-20 23:41:09,822 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=50, Invalid=160, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:41:09,822 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 19 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 28 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:09,823 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 132 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 38 Invalid, 0 Unknown, 28 Unchecked, 0.2s Time] [2022-02-20 23:41:09,823 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-02-20 23:41:09,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 124. [2022-02-20 23:41:09,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:09,829 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:09,829 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:09,830 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:09,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:09,832 INFO L93 Difference]: Finished difference Result 132 states and 167 transitions. [2022-02-20 23:41:09,832 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 167 transitions. [2022-02-20 23:41:09,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:09,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:09,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 132 states. [2022-02-20 23:41:09,833 INFO L87 Difference]: Start difference. First operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 132 states. [2022-02-20 23:41:09,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:09,834 INFO L93 Difference]: Finished difference Result 132 states and 167 transitions. [2022-02-20 23:41:09,834 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 167 transitions. [2022-02-20 23:41:09,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:09,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:09,835 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:09,835 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:09,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 119 states have (on average 1.3361344537815125) internal successors, (159), 123 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:09,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 159 transitions. [2022-02-20 23:41:09,837 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 159 transitions. Word has length 18 [2022-02-20 23:41:09,837 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:09,837 INFO L470 AbstractCegarLoop]: Abstraction has 124 states and 159 transitions. [2022-02-20 23:41:09,837 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.8333333333333335) internal successors, (34), 13 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:09,838 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 159 transitions. [2022-02-20 23:41:09,838 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:41:09,838 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:09,838 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:09,851 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:10,045 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:10,045 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:10,046 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:10,046 INFO L85 PathProgramCache]: Analyzing trace with hash 1331880655, now seen corresponding path program 1 times [2022-02-20 23:41:10,046 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:10,046 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1052032234] [2022-02-20 23:41:10,046 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:10,046 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:10,046 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:10,047 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:10,048 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2022-02-20 23:41:10,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:10,093 INFO L263 TraceCheckSpWp]: Trace formula consists of 64 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:41:10,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:10,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:10,123 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 8 treesize of output 7 [2022-02-20 23:41:10,368 INFO L290 TraceCheckUtils]: 0: Hoare triple {6659#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {6659#true} is VALID [2022-02-20 23:41:10,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {6659#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {6659#true} is VALID [2022-02-20 23:41:10,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {6659#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {6670#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:41:10,370 INFO L290 TraceCheckUtils]: 3: Hoare triple {6670#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:10,370 INFO L290 TraceCheckUtils]: 4: Hoare triple {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:10,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:10,371 INFO L290 TraceCheckUtils]: 6: Hoare triple {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} havoc main_#t~nondet11#1; {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:10,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {6674#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {6687#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:10,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {6687#(and (= (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~i~1#1|) (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {6691#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:10,375 INFO L290 TraceCheckUtils]: 9: Hoare triple {6691#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {6695#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:10,376 INFO L290 TraceCheckUtils]: 10: Hoare triple {6695#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:10,377 INFO L290 TraceCheckUtils]: 11: Hoare triple {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:10,379 INFO L290 TraceCheckUtils]: 12: Hoare triple {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:10,382 INFO L290 TraceCheckUtils]: 13: Hoare triple {6699#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {6660#false} is VALID [2022-02-20 23:41:10,382 INFO L290 TraceCheckUtils]: 14: Hoare triple {6660#false} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {6660#false} is VALID [2022-02-20 23:41:10,382 INFO L290 TraceCheckUtils]: 15: Hoare triple {6660#false} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {6660#false} is VALID [2022-02-20 23:41:10,382 INFO L290 TraceCheckUtils]: 16: Hoare triple {6660#false} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6660#false} is VALID [2022-02-20 23:41:10,382 INFO L290 TraceCheckUtils]: 17: Hoare triple {6660#false} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6660#false} is VALID [2022-02-20 23:41:10,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {6660#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {6660#false} is VALID [2022-02-20 23:41:10,383 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:10,383 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:11,275 INFO L290 TraceCheckUtils]: 18: Hoare triple {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {6660#false} is VALID [2022-02-20 23:41:11,276 INFO L290 TraceCheckUtils]: 17: Hoare triple {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:11,276 INFO L290 TraceCheckUtils]: 16: Hoare triple {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:11,901 INFO L290 TraceCheckUtils]: 15: Hoare triple {6734#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {6724#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:11,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {6734#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {6734#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:11,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {6734#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:11,903 INFO L290 TraceCheckUtils]: 12: Hoare triple {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:11,904 INFO L290 TraceCheckUtils]: 11: Hoare triple {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:11,904 INFO L290 TraceCheckUtils]: 10: Hoare triple {6751#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {6741#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:11,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {6755#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {6751#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:11,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {6759#(or (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {6755#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:11,908 INFO L290 TraceCheckUtils]: 7: Hoare triple {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {6759#(or (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:11,910 INFO L290 TraceCheckUtils]: 6: Hoare triple {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} havoc main_#t~nondet11#1; {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:11,913 INFO L290 TraceCheckUtils]: 5: Hoare triple {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:11,914 INFO L290 TraceCheckUtils]: 4: Hoare triple {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:11,916 INFO L290 TraceCheckUtils]: 3: Hoare triple {6776#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {6763#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:11,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {6659#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {6776#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:11,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {6659#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {6659#true} is VALID [2022-02-20 23:41:11,917 INFO L290 TraceCheckUtils]: 0: Hoare triple {6659#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {6659#true} is VALID [2022-02-20 23:41:11,917 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:11,917 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:11,917 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1052032234] [2022-02-20 23:41:11,917 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1052032234] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:11,917 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:41:11,917 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 16 [2022-02-20 23:41:11,917 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1428118223] [2022-02-20 23:41:11,917 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:11,918 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:41:11,918 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:11,918 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:12,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:12,519 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 23:41:12,519 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:12,520 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 23:41:12,520 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:41:12,520 INFO L87 Difference]: Start difference. First operand 124 states and 159 transitions. Second operand has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:14,733 INFO L93 Difference]: Finished difference Result 128 states and 163 transitions. [2022-02-20 23:41:14,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:41:14,733 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:41:14,734 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:14,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-02-20 23:41:14,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-02-20 23:41:14,735 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 47 transitions. [2022-02-20 23:41:14,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:14,820 INFO L225 Difference]: With dead ends: 128 [2022-02-20 23:41:14,820 INFO L226 Difference]: Without dead ends: 126 [2022-02-20 23:41:14,820 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=64, Invalid=242, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:41:14,820 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 37 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 127 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 6 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:14,820 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 127 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 141 Invalid, 0 Unknown, 6 Unchecked, 0.8s Time] [2022-02-20 23:41:14,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-02-20 23:41:14,822 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 123. [2022-02-20 23:41:14,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:14,822 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,822 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,823 INFO L87 Difference]: Start difference. First operand 126 states. Second operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:14,824 INFO L93 Difference]: Finished difference Result 126 states and 161 transitions. [2022-02-20 23:41:14,824 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 161 transitions. [2022-02-20 23:41:14,824 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:14,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:14,825 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 126 states. [2022-02-20 23:41:14,825 INFO L87 Difference]: Start difference. First operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 126 states. [2022-02-20 23:41:14,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:14,827 INFO L93 Difference]: Finished difference Result 126 states and 161 transitions. [2022-02-20 23:41:14,827 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 161 transitions. [2022-02-20 23:41:14,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:14,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:14,827 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:14,827 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:14,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 119 states have (on average 1.3277310924369747) internal successors, (158), 122 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 158 transitions. [2022-02-20 23:41:14,829 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 158 transitions. Word has length 19 [2022-02-20 23:41:14,829 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:14,829 INFO L470 AbstractCegarLoop]: Abstraction has 123 states and 158 transitions. [2022-02-20 23:41:14,829 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:14,829 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 158 transitions. [2022-02-20 23:41:14,830 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:41:14,830 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:14,830 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:41:14,839 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:15,039 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:15,040 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:15,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:15,040 INFO L85 PathProgramCache]: Analyzing trace with hash 1149452832, now seen corresponding path program 1 times [2022-02-20 23:41:15,040 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:15,041 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1993419776] [2022-02-20 23:41:15,041 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:15,041 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:15,041 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:15,042 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:15,043 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Waiting until timeout for monitored process [2022-02-20 23:41:15,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:15,087 INFO L263 TraceCheckSpWp]: Trace formula consists of 63 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:41:15,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:15,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:15,120 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 8 treesize of output 7 [2022-02-20 23:41:16,526 INFO L290 TraceCheckUtils]: 0: Hoare triple {7292#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {7292#true} is VALID [2022-02-20 23:41:16,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {7292#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {7292#true} is VALID [2022-02-20 23:41:16,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {7292#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {7303#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:41:16,528 INFO L290 TraceCheckUtils]: 3: Hoare triple {7303#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,528 INFO L290 TraceCheckUtils]: 4: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,529 INFO L290 TraceCheckUtils]: 5: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,529 INFO L290 TraceCheckUtils]: 6: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} havoc main_#t~nondet11#1; {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {7307#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,531 INFO L290 TraceCheckUtils]: 10: Hoare triple {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,531 INFO L290 TraceCheckUtils]: 11: Hoare triple {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {7326#(and (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,532 INFO L290 TraceCheckUtils]: 14: Hoare triple {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,533 INFO L290 TraceCheckUtils]: 15: Hoare triple {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,533 INFO L290 TraceCheckUtils]: 16: Hoare triple {7339#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {7349#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,534 INFO L290 TraceCheckUtils]: 17: Hoare triple {7349#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {7349#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,534 INFO L290 TraceCheckUtils]: 18: Hoare triple {7349#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {7356#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {7356#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7356#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} is VALID [2022-02-20 23:41:16,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {7356#(and (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {7293#false} is VALID [2022-02-20 23:41:16,535 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:41:16,535 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:17,162 INFO L290 TraceCheckUtils]: 20: Hoare triple {7363#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)))); {7293#false} is VALID [2022-02-20 23:41:17,163 INFO L290 TraceCheckUtils]: 19: Hoare triple {7363#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7363#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:17,599 INFO L290 TraceCheckUtils]: 18: Hoare triple {7370#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {7363#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:17,599 INFO L290 TraceCheckUtils]: 17: Hoare triple {7370#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {7370#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:17,600 INFO L290 TraceCheckUtils]: 16: Hoare triple {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {7370#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:17,600 INFO L290 TraceCheckUtils]: 15: Hoare triple {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:17,601 INFO L290 TraceCheckUtils]: 14: Hoare triple {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:17,601 INFO L290 TraceCheckUtils]: 13: Hoare triple {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {7377#(or (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:17,602 INFO L290 TraceCheckUtils]: 12: Hoare triple {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:41:17,602 INFO L290 TraceCheckUtils]: 11: Hoare triple {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:41:17,602 INFO L290 TraceCheckUtils]: 10: Hoare triple {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:41:17,603 INFO L290 TraceCheckUtils]: 9: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {7387#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:41:17,604 INFO L290 TraceCheckUtils]: 8: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,604 INFO L290 TraceCheckUtils]: 7: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,604 INFO L290 TraceCheckUtils]: 6: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} havoc main_#t~nondet11#1; {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,605 INFO L290 TraceCheckUtils]: 5: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,605 INFO L290 TraceCheckUtils]: 4: Hoare triple {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,606 INFO L290 TraceCheckUtils]: 3: Hoare triple {7292#true} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {7400#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (bvule (bvadd (_ bv4 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|)))} is VALID [2022-02-20 23:41:17,606 INFO L290 TraceCheckUtils]: 2: Hoare triple {7292#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {7292#true} is VALID [2022-02-20 23:41:17,606 INFO L290 TraceCheckUtils]: 1: Hoare triple {7292#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {7292#true} is VALID [2022-02-20 23:41:17,606 INFO L290 TraceCheckUtils]: 0: Hoare triple {7292#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {7292#true} is VALID [2022-02-20 23:41:17,606 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 23:41:17,606 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:17,606 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1993419776] [2022-02-20 23:41:17,606 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1993419776] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:17,606 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:41:17,606 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 12 [2022-02-20 23:41:17,607 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [999186354] [2022-02-20 23:41:17,607 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:17,607 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:41:17,607 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:17,607 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:18,216 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:41:18,216 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:41:18,216 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:18,216 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:41:18,217 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:41:18,217 INFO L87 Difference]: Start difference. First operand 123 states and 158 transitions. Second operand has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:18,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:18,815 INFO L93 Difference]: Finished difference Result 171 states and 224 transitions. [2022-02-20 23:41:18,815 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:41:18,815 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 23:41:18,816 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:18,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:18,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 60 transitions. [2022-02-20 23:41:18,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:18,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 60 transitions. [2022-02-20 23:41:18,817 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 60 transitions. [2022-02-20 23:41:19,383 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:19,385 INFO L225 Difference]: With dead ends: 171 [2022-02-20 23:41:19,385 INFO L226 Difference]: Without dead ends: 171 [2022-02-20 23:41:19,385 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:41:19,386 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 24 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 32 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:19,386 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 112 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 19 Invalid, 0 Unknown, 32 Unchecked, 0.1s Time] [2022-02-20 23:41:19,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-02-20 23:41:19,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 153. [2022-02-20 23:41:19,388 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:19,388 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:19,389 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:19,389 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:19,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:19,391 INFO L93 Difference]: Finished difference Result 171 states and 224 transitions. [2022-02-20 23:41:19,391 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 224 transitions. [2022-02-20 23:41:19,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:19,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:19,391 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 171 states. [2022-02-20 23:41:19,392 INFO L87 Difference]: Start difference. First operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 171 states. [2022-02-20 23:41:19,393 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:19,394 INFO L93 Difference]: Finished difference Result 171 states and 224 transitions. [2022-02-20 23:41:19,394 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 224 transitions. [2022-02-20 23:41:19,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:19,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:19,394 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:19,394 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:19,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 149 states have (on average 1.3758389261744965) internal successors, (205), 152 states have internal predecessors, (205), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:19,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 205 transitions. [2022-02-20 23:41:19,396 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 205 transitions. Word has length 21 [2022-02-20 23:41:19,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:19,396 INFO L470 AbstractCegarLoop]: Abstraction has 153 states and 205 transitions. [2022-02-20 23:41:19,396 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.3333333333333335) internal successors, (40), 13 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:19,396 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 205 transitions. [2022-02-20 23:41:19,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:41:19,397 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:19,397 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:19,404 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:19,603 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:19,604 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:19,604 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:19,604 INFO L85 PathProgramCache]: Analyzing trace with hash 1273299411, now seen corresponding path program 1 times [2022-02-20 23:41:19,604 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:19,604 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [955025879] [2022-02-20 23:41:19,604 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:19,605 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:19,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:19,606 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:19,606 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2022-02-20 23:41:19,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:19,659 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:41:19,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:19,666 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:19,688 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 8 treesize of output 7 [2022-02-20 23:41:19,964 INFO L290 TraceCheckUtils]: 0: Hoare triple {8095#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {8095#true} is VALID [2022-02-20 23:41:19,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {8095#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {8095#true} is VALID [2022-02-20 23:41:19,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {8095#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {8106#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:41:19,966 INFO L290 TraceCheckUtils]: 3: Hoare triple {8106#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:19,967 INFO L290 TraceCheckUtils]: 4: Hoare triple {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:19,967 INFO L290 TraceCheckUtils]: 5: Hoare triple {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:19,968 INFO L290 TraceCheckUtils]: 6: Hoare triple {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} havoc main_#t~nondet11#1; {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:19,968 INFO L290 TraceCheckUtils]: 7: Hoare triple {8110#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv0 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {8123#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:19,969 INFO L290 TraceCheckUtils]: 8: Hoare triple {8123#(and (= |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {8127#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,970 INFO L290 TraceCheckUtils]: 9: Hoare triple {8127#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,971 INFO L290 TraceCheckUtils]: 10: Hoare triple {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,973 INFO L290 TraceCheckUtils]: 11: Hoare triple {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {8131#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,977 INFO L290 TraceCheckUtils]: 14: Hoare triple {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,979 INFO L290 TraceCheckUtils]: 15: Hoare triple {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:19,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {8144#(and (exists ((|ULTIMATE.start_main_~array_size~0#1| (_ BitVec 32))) (and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L290 TraceCheckUtils]: 17: Hoare triple {8096#false} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {8096#false} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L290 TraceCheckUtils]: 19: Hoare triple {8096#false} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L290 TraceCheckUtils]: 20: Hoare triple {8096#false} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L290 TraceCheckUtils]: 21: Hoare triple {8096#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {8096#false} is VALID [2022-02-20 23:41:19,982 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 5 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:41:19,982 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:20,931 INFO L290 TraceCheckUtils]: 21: Hoare triple {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {8096#false} is VALID [2022-02-20 23:41:20,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:20,932 INFO L290 TraceCheckUtils]: 19: Hoare triple {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:21,480 INFO L290 TraceCheckUtils]: 18: Hoare triple {8179#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {8169#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:21,483 INFO L290 TraceCheckUtils]: 17: Hoare triple {8179#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {8179#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:21,483 INFO L290 TraceCheckUtils]: 16: Hoare triple {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {8179#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:21,484 INFO L290 TraceCheckUtils]: 15: Hoare triple {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:21,485 INFO L290 TraceCheckUtils]: 14: Hoare triple {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:21,485 INFO L290 TraceCheckUtils]: 13: Hoare triple {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {8186#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:21,487 INFO L290 TraceCheckUtils]: 12: Hoare triple {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} sort_#t~post2#1 := sort_~pass~0#1;sort_~pass~0#1 := ~bvadd32(1bv32, sort_#t~post2#1);havoc sort_#t~post2#1; {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,488 INFO L290 TraceCheckUtils]: 11: Hoare triple {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} assume !~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,490 INFO L290 TraceCheckUtils]: 10: Hoare triple {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,491 INFO L290 TraceCheckUtils]: 9: Hoare triple {8209#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {8196#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,492 INFO L290 TraceCheckUtils]: 8: Hoare triple {8213#(or (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {8209#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {8213#(or (bvslt |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~array_size~0#1|) (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:21,495 INFO L290 TraceCheckUtils]: 6: Hoare triple {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} havoc main_#t~nondet11#1; {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:21,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:21,499 INFO L290 TraceCheckUtils]: 4: Hoare triple {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:21,500 INFO L290 TraceCheckUtils]: 3: Hoare triple {8230#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {8217#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))) (bvslt (bvadd |ULTIMATE.start_main_~i~1#1| (_ bv1 32)) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:21,501 INFO L290 TraceCheckUtils]: 2: Hoare triple {8095#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {8230#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (bvslt (_ bv1 32) |ULTIMATE.start_main_~array_size~0#1|))} is VALID [2022-02-20 23:41:21,501 INFO L290 TraceCheckUtils]: 1: Hoare triple {8095#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {8095#true} is VALID [2022-02-20 23:41:21,501 INFO L290 TraceCheckUtils]: 0: Hoare triple {8095#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {8095#true} is VALID [2022-02-20 23:41:21,502 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:41:21,502 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:21,502 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [955025879] [2022-02-20 23:41:21,502 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [955025879] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:21,502 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:41:21,502 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 16 [2022-02-20 23:41:21,502 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1728339043] [2022-02-20 23:41:21,502 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:21,502 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:41:21,503 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:21,503 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:22,276 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:22,276 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 23:41:22,276 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:22,276 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 23:41:22,277 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:41:22,277 INFO L87 Difference]: Start difference. First operand 153 states and 205 transitions. Second operand has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,219 INFO L93 Difference]: Finished difference Result 172 states and 225 transitions. [2022-02-20 23:41:24,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:41:24,219 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:41:24,220 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:24,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 48 transitions. [2022-02-20 23:41:24,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 48 transitions. [2022-02-20 23:41:24,221 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 48 transitions. [2022-02-20 23:41:24,303 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:41:24,305 INFO L225 Difference]: With dead ends: 172 [2022-02-20 23:41:24,305 INFO L226 Difference]: Without dead ends: 168 [2022-02-20 23:41:24,305 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=64, Invalid=242, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:41:24,306 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 33 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 128 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 16 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:24,306 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 117 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 128 Invalid, 0 Unknown, 16 Unchecked, 0.7s Time] [2022-02-20 23:41:24,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-20 23:41:24,308 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 167. [2022-02-20 23:41:24,308 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:24,308 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,308 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,309 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,311 INFO L93 Difference]: Finished difference Result 168 states and 220 transitions. [2022-02-20 23:41:24,311 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 220 transitions. [2022-02-20 23:41:24,311 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:24,311 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:24,311 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:41:24,312 INFO L87 Difference]: Start difference. First operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:41:24,313 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,313 INFO L93 Difference]: Finished difference Result 168 states and 220 transitions. [2022-02-20 23:41:24,314 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 220 transitions. [2022-02-20 23:41:24,314 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:24,314 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:24,314 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:24,314 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:24,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 163 states have (on average 1.3496932515337423) internal successors, (220), 166 states have internal predecessors, (220), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 220 transitions. [2022-02-20 23:41:24,316 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 220 transitions. Word has length 22 [2022-02-20 23:41:24,316 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:24,316 INFO L470 AbstractCegarLoop]: Abstraction has 167 states and 220 transitions. [2022-02-20 23:41:24,316 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.625) internal successors, (42), 16 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:24,317 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 220 transitions. [2022-02-20 23:41:24,317 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:41:24,317 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:24,317 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:24,327 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:24,523 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:41:24,524 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 11 more)] === [2022-02-20 23:41:24,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:24,524 INFO L85 PathProgramCache]: Analyzing trace with hash -1637861780, now seen corresponding path program 2 times [2022-02-20 23:41:24,524 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:41:24,524 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [970449865] [2022-02-20 23:41:24,524 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:24,524 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:41:24,525 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:41:24,526 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:41:24,532 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (20)] Waiting until timeout for monitored process [2022-02-20 23:41:24,585 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:24,585 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:24,589 INFO L263 TraceCheckSpWp]: Trace formula consists of 77 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:41:24,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:24,601 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:24,616 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 8 treesize of output 7 [2022-02-20 23:41:25,043 INFO L290 TraceCheckUtils]: 0: Hoare triple {8918#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {8918#true} is VALID [2022-02-20 23:41:25,043 INFO L290 TraceCheckUtils]: 1: Hoare triple {8918#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {8918#true} is VALID [2022-02-20 23:41:25,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {8918#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {8929#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} is VALID [2022-02-20 23:41:25,044 INFO L290 TraceCheckUtils]: 3: Hoare triple {8929#(not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,045 INFO L290 TraceCheckUtils]: 4: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,045 INFO L290 TraceCheckUtils]: 5: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,046 INFO L290 TraceCheckUtils]: 6: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} havoc main_#t~nondet11#1; {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,046 INFO L290 TraceCheckUtils]: 7: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,048 INFO L290 TraceCheckUtils]: 10: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} havoc main_#t~nondet11#1; {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,048 INFO L290 TraceCheckUtils]: 11: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,049 INFO L290 TraceCheckUtils]: 12: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,049 INFO L290 TraceCheckUtils]: 13: Hoare triple {8933#(and (= |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)) (not (bvuge |ULTIMATE.start_main_~array_size~0#1| (_ bv536870911 32))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {8964#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,050 INFO L290 TraceCheckUtils]: 14: Hoare triple {8964#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {8968#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,050 INFO L290 TraceCheckUtils]: 15: Hoare triple {8968#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,051 INFO L290 TraceCheckUtils]: 16: Hoare triple {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,051 INFO L290 TraceCheckUtils]: 17: Hoare triple {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,052 INFO L290 TraceCheckUtils]: 18: Hoare triple {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,052 INFO L290 TraceCheckUtils]: 19: Hoare triple {8972#(and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv0 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {8985#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} is VALID [2022-02-20 23:41:25,054 INFO L290 TraceCheckUtils]: 20: Hoare triple {8985#(and (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)) (= |ULTIMATE.start_sort_~pass~0#1| (_ bv1 32)) (bvslt (_ bv0 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|))) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8989#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~n#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:25,055 INFO L290 TraceCheckUtils]: 21: Hoare triple {8989#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~n#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8989#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~n#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:41:25,057 INFO L290 TraceCheckUtils]: 22: Hoare triple {8989#(and (exists ((|ULTIMATE.start_sort_~n#1| (_ BitVec 32))) (and (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd (_ bv4294967295 32) |ULTIMATE.start_sort_~n#1|)) (= (select |#length| |ULTIMATE.start_sort_~x#1.base|) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~n#1|)) (not (bvuge |ULTIMATE.start_sort_~n#1| (_ bv536870911 32))))) (= |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (= |ULTIMATE.start_sort_~x#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {8919#false} is VALID [2022-02-20 23:41:25,057 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:41:25,057 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:26,396 INFO L290 TraceCheckUtils]: 22: Hoare triple {8996#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))), #length[sort_~x#1.base]) && ~bvule32(~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), ~bvadd32(4bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1)))))) && ~bvule32(0bv32, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))))); {8919#false} is VALID [2022-02-20 23:41:26,397 INFO L290 TraceCheckUtils]: 21: Hoare triple {8996#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {8996#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:26,399 INFO L290 TraceCheckUtils]: 20: Hoare triple {9003#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {8996#(and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)))} is VALID [2022-02-20 23:41:27,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {9007#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} sort_#t~post3#1 := sort_~i~0#1;sort_~i~0#1 := ~bvadd32(1bv32, sort_#t~post3#1);havoc sort_#t~post3#1; {9003#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv4 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} is VALID [2022-02-20 23:41:27,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {9007#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} assume !~bvsgt32(sort_#t~mem4#1, sort_#t~mem5#1);havoc sort_#t~mem4#1;havoc sort_#t~mem5#1; {9007#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} is VALID [2022-02-20 23:41:27,329 INFO L290 TraceCheckUtils]: 17: Hoare triple {9014#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem5#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, ~bvadd32(1bv32, sort_~i~0#1))), 4bv32); srcloc: L517-1 {9007#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))))} is VALID [2022-02-20 23:41:27,329 INFO L290 TraceCheckUtils]: 16: Hoare triple {9014#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} SUMMARY for call sort_#t~mem4#1 := read~intINTTYPE4(sort_~x#1.base, ~bvadd32(sort_~x#1.offset, ~bvmul32(4bv32, sort_~i~0#1)), 4bv32); srcloc: L517 {9014#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:27,330 INFO L290 TraceCheckUtils]: 15: Hoare triple {9021#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} assume !!~bvslt32(sort_~i~0#1, ~bvsub32(sort_~n#1, sort_~pass~0#1)); {9014#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:27,330 INFO L290 TraceCheckUtils]: 14: Hoare triple {9025#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (_ bv1 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} assume !!~bvslt32(sort_~pass~0#1, sort_~n#1);sort_~i~0#1 := 0bv32; {9021#(or (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|))) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt |ULTIMATE.start_sort_~i~0#1| (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvslt (bvadd |ULTIMATE.start_sort_~i~0#1| (_ bv1 32)) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_sort_~i~0#1|)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))))} is VALID [2022-02-20 23:41:27,332 INFO L290 TraceCheckUtils]: 13: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume { :begin_inline_sort } true;sort_#in~x#1.base, sort_#in~x#1.offset, sort_#in~n#1 := main_~numbers~0#1.base, main_~numbers~0#1.offset, main_~array_size~0#1;havoc sort_#t~mem4#1, sort_#t~mem5#1, sort_#t~mem6#1, sort_#t~mem7#1, sort_~temp~0#1, sort_#t~post3#1, sort_#t~post2#1, sort_~x#1.base, sort_~x#1.offset, sort_~n#1, sort_~pass~0#1, sort_~i~0#1;sort_~x#1.base, sort_~x#1.offset := sort_#in~x#1.base, sort_#in~x#1.offset;sort_~n#1 := sort_#in~n#1;havoc sort_~pass~0#1;havoc sort_~i~0#1;sort_~pass~0#1 := 1bv32; {9025#(or (not (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|))) (not (bvslt (_ bv1 32) (bvadd |ULTIMATE.start_sort_~n#1| (bvneg |ULTIMATE.start_sort_~pass~0#1|)))) (and (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_sort_~x#1.base|)) (bvule (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv8 32)) (bvadd |ULTIMATE.start_sort_~x#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,334 INFO L290 TraceCheckUtils]: 12: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume !~bvslt32(main_~i~1#1, main_~array_size~0#1); {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,336 INFO L290 TraceCheckUtils]: 11: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,337 INFO L290 TraceCheckUtils]: 10: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} havoc main_#t~nondet11#1; {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} main_#t~post10#1 := main_~i~1#1;main_~i~1#1 := ~bvadd32(1bv32, main_#t~post10#1);havoc main_#t~post10#1; {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,345 INFO L290 TraceCheckUtils]: 6: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} havoc main_#t~nondet11#1; {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,347 INFO L290 TraceCheckUtils]: 5: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} SUMMARY for call write~intINTTYPE4(main_#t~nondet11#1, main_~numbers~0#1.base, ~bvadd32(main_~numbers~0#1.offset, ~bvmul32(4bv32, main_~i~1#1)), 4bv32); srcloc: L530 {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,349 INFO L290 TraceCheckUtils]: 4: Hoare triple {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} assume !!~bvslt32(main_~i~1#1, main_~array_size~0#1); {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,351 INFO L290 TraceCheckUtils]: 3: Hoare triple {9060#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} call main_#t~malloc9#1.base, main_#t~malloc9#1.offset := #Ultimate.allocOnStack(~bvmul32(4bv32, main_~array_size~0#1));main_~numbers~0#1.base, main_~numbers~0#1.offset := main_#t~malloc9#1.base, main_#t~malloc9#1.offset;main_~i~1#1 := 0bv32; {9029#(or (not (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (and (bvule (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)) (select |#length| |ULTIMATE.start_main_~numbers~0#1.base|)) (bvule (bvadd (_ bv8 32) |ULTIMATE.start_main_~numbers~0#1.offset|) (bvadd |ULTIMATE.start_main_~numbers~0#1.offset| (_ bv12 32)))))} is VALID [2022-02-20 23:41:27,352 INFO L290 TraceCheckUtils]: 2: Hoare triple {8918#true} assume !(~bvslt32(main_~array_size~0#1, 1bv32) || ~bvuge32(main_~array_size~0#1, 536870911bv32)); {9060#(or (not (bvule (_ bv8 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|))) (not (bvslt (_ bv1 32) (bvadd (_ bv4294967295 32) |ULTIMATE.start_main_~array_size~0#1|))) (bvule (_ bv12 32) (bvmul (_ bv4 32) |ULTIMATE.start_main_~array_size~0#1|)))} is VALID [2022-02-20 23:41:27,352 INFO L290 TraceCheckUtils]: 1: Hoare triple {8918#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet8#1, main_#t~malloc9#1.base, main_#t~malloc9#1.offset, main_#t~nondet11#1, main_#t~post10#1, main_~i~1#1, main_~array_size~0#1, main_~numbers~0#1.base, main_~numbers~0#1.offset;main_~array_size~0#1 := main_#t~nondet8#1;havoc main_#t~nondet8#1; {8918#true} is VALID [2022-02-20 23:41:27,352 INFO L290 TraceCheckUtils]: 0: Hoare triple {8918#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {8918#true} is VALID [2022-02-20 23:41:27,352 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:41:27,352 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:41:27,352 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [970449865] [2022-02-20 23:41:27,353 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [970449865] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:27,353 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:41:27,353 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9] total 16 [2022-02-20 23:41:27,353 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [160836053] [2022-02-20 23:41:27,353 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:27,353 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 23:41:27,354 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:27,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:28,408 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:41:28,408 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:41:28,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:41:28,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:41:28,409 INFO L87 Difference]: Start difference. First operand 167 states and 220 transitions. Second operand has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0)