./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/20020406-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/memsafety/20020406-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 1ecdf6fdf9ec72145fabb79894bcc278b3e5646bc4893dbabc4bb180fa53c5ae --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:43:34,161 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:43:34,163 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:43:34,183 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:43:34,184 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:43:34,185 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:43:34,186 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:43:34,187 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:43:34,188 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:43:34,192 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:43:34,193 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:43:34,194 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:43:34,195 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:43:34,196 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:43:34,197 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:43:34,199 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:43:34,200 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:43:34,201 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:43:34,204 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:43:34,205 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:43:34,209 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:43:34,210 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:43:34,210 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:43:34,211 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:43:34,213 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:43:34,215 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:43:34,216 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:43:34,216 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:43:34,217 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:43:34,218 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:43:34,218 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:43:34,219 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:43:34,219 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:43:34,220 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:43:34,221 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:43:34,222 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:43:34,222 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:43:34,222 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:43:34,223 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:43:34,223 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:43:34,224 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:43:34,226 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:43:34,250 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:43:34,252 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:43:34,252 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:43:34,253 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:43:34,253 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:43:34,253 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:43:34,254 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:43:34,254 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:43:34,254 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:43:34,254 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:43:34,255 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:43:34,255 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:43:34,255 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:43:34,255 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:43:34,256 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:43:34,257 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:43:34,257 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:43:34,257 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:43:34,257 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:43:34,257 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:43:34,257 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:43:34,258 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:43:34,259 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:43:34,259 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:43:34,259 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 -> 1ecdf6fdf9ec72145fabb79894bcc278b3e5646bc4893dbabc4bb180fa53c5ae [2022-02-20 23:43:34,469 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:43:34,492 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:43:34,494 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:43:34,495 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:43:34,495 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:43:34,496 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/20020406-1.i [2022-02-20 23:43:34,542 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9217269ec/58720277ae84438885686a850b8cde73/FLAG14937ac27 [2022-02-20 23:43:34,997 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:43:34,998 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/20020406-1.i [2022-02-20 23:43:35,025 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9217269ec/58720277ae84438885686a850b8cde73/FLAG14937ac27 [2022-02-20 23:43:35,517 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9217269ec/58720277ae84438885686a850b8cde73 [2022-02-20 23:43:35,519 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:43:35,520 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:43:35,521 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:43:35,521 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:43:35,528 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:43:35,529 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:43:35" (1/1) ... [2022-02-20 23:43:35,530 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6eaa5e92 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:35, skipping insertion in model container [2022-02-20 23:43:35,530 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:43:35" (1/1) ... [2022-02-20 23:43:35,535 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:43:35,564 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:43:35,876 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:43:35,886 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:43:35,886 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@1cbf3747 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:35, skipping insertion in model container [2022-02-20 23:43:35,887 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:43:35,887 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:43:35,889 INFO L158 Benchmark]: Toolchain (without parser) took 367.64ms. Allocated memory is still 111.1MB. Free memory was 78.2MB in the beginning and 78.9MB in the end (delta: -652.7kB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2022-02-20 23:43:35,889 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 111.1MB. Free memory is still 65.8MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:43:35,889 INFO L158 Benchmark]: CACSL2BoogieTranslator took 365.66ms. Allocated memory is still 111.1MB. Free memory was 78.2MB in the beginning and 78.9MB in the end (delta: -652.7kB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2022-02-20 23:43:35,890 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.14ms. Allocated memory is still 111.1MB. Free memory is still 65.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 365.66ms. Allocated memory is still 111.1MB. Free memory was 78.2MB in the beginning and 78.9MB in the end (delta: -652.7kB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 897]: 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/memsafety/20020406-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 1ecdf6fdf9ec72145fabb79894bcc278b3e5646bc4893dbabc4bb180fa53c5ae --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:43:37,493 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:43:37,494 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:43:37,525 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:43:37,525 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:43:37,528 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:43:37,530 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:43:37,531 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:43:37,532 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:43:37,533 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:43:37,533 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:43:37,534 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:43:37,534 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:43:37,535 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:43:37,547 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:43:37,550 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:43:37,551 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:43:37,552 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:43:37,553 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:43:37,556 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:43:37,559 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:43:37,560 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:43:37,560 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:43:37,561 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:43:37,563 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:43:37,565 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:43:37,566 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:43:37,566 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:43:37,567 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:43:37,568 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:43:37,568 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:43:37,569 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:43:37,570 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:43:37,570 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:43:37,571 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:43:37,571 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:43:37,572 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:43:37,572 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:43:37,572 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:43:37,573 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:43:37,574 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:43:37,577 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:43:37,598 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:43:37,598 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:43:37,599 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:43:37,599 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:43:37,600 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:43:37,600 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:43:37,602 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:43:37,602 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:43:37,602 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:43:37,602 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:43:37,603 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:43:37,603 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:43:37,603 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:43:37,603 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:43:37,603 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:43:37,604 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:43:37,605 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:43:37,605 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:43:37,605 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:43:37,605 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:43:37,605 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:43:37,605 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:43:37,606 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:43:37,606 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:43:37,606 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:43:37,606 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:43:37,606 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 -> 1ecdf6fdf9ec72145fabb79894bcc278b3e5646bc4893dbabc4bb180fa53c5ae [2022-02-20 23:43:37,850 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:43:37,874 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:43:37,876 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:43:37,877 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:43:37,878 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:43:37,879 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/20020406-1.i [2022-02-20 23:43:37,947 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/882143384/e2d81e7d5bd64de58ee5fff3aaad1b05/FLAG8431fee10 [2022-02-20 23:43:38,446 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:43:38,447 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/20020406-1.i [2022-02-20 23:43:38,459 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/882143384/e2d81e7d5bd64de58ee5fff3aaad1b05/FLAG8431fee10 [2022-02-20 23:43:38,915 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/882143384/e2d81e7d5bd64de58ee5fff3aaad1b05 [2022-02-20 23:43:38,917 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:43:38,919 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:43:38,920 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:43:38,920 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:43:38,922 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:43:38,924 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:43:38" (1/1) ... [2022-02-20 23:43:38,924 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2a06027d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:38, skipping insertion in model container [2022-02-20 23:43:38,924 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:43:38" (1/1) ... [2022-02-20 23:43:38,929 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:43:38,970 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:43:39,294 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:43:39,311 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:43:39,316 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:43:39,346 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:43:39,350 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:43:39,379 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:43:39,430 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:43:39,430 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39 WrapperNode [2022-02-20 23:43:39,430 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:43:39,431 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:43:39,431 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:43:39,432 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:43:39,436 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:43:39" (1/1) ... [2022-02-20 23:43:39,458 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:43:39" (1/1) ... [2022-02-20 23:43:39,490 INFO L137 Inliner]: procedures = 286, calls = 76, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 65 [2022-02-20 23:43:39,491 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:43:39,491 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:43:39,491 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:43:39,491 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:43:39,497 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,497 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,512 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,518 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,534 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,541 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,544 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,550 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:43:39,552 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:43:39,555 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:43:39,556 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:43:39,556 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (1/1) ... [2022-02-20 23:43:39,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:43:39,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:43:39,584 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:43:39,585 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:43:39,609 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFdeg [2022-02-20 23:43:39,609 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFdeg [2022-02-20 23:43:39,609 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:43:39,610 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:43:39,610 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:43:39,610 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFnew [2022-02-20 23:43:39,610 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFnew [2022-02-20 23:43:39,610 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFfree [2022-02-20 23:43:39,610 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFfree [2022-02-20 23:43:39,610 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFshift_add [2022-02-20 23:43:39,610 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFshift_add [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure FFmul [2022-02-20 23:43:39,611 INFO L138 BoogieDeclarations]: Found implementation of procedure FFmul [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFexgcd [2022-02-20 23:43:39,611 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFexgcd [2022-02-20 23:43:39,611 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:43:39,612 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:43:39,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:43:39,612 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFswap [2022-02-20 23:43:39,612 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFswap [2022-02-20 23:43:39,612 INFO L130 BoogieDeclarations]: Found specification of procedure DUPFFcopy [2022-02-20 23:43:39,612 INFO L138 BoogieDeclarations]: Found implementation of procedure DUPFFcopy [2022-02-20 23:43:39,612 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:43:39,613 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:43:39,702 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:43:39,703 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:43:40,279 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:43:40,287 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:43:40,289 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:43:40,292 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:43:40 BoogieIcfgContainer [2022-02-20 23:43:40,292 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:43:40,293 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:43:40,294 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:43:40,296 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:43:40,296 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:43:38" (1/3) ... [2022-02-20 23:43:40,296 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@298907ed and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:43:40, skipping insertion in model container [2022-02-20 23:43:40,296 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:43:39" (2/3) ... [2022-02-20 23:43:40,297 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@298907ed and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:43:40, skipping insertion in model container [2022-02-20 23:43:40,297 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:43:40" (3/3) ... [2022-02-20 23:43:40,298 INFO L111 eAbstractionObserver]: Analyzing ICFG 20020406-1.i [2022-02-20 23:43:40,302 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:43:40,302 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 55 error locations. [2022-02-20 23:43:40,348 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:43:40,354 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:43:40,354 INFO L340 AbstractCegarLoop]: Starting to check reachability of 55 error locations. [2022-02-20 23:43:40,373 INFO L276 IsEmpty]: Start isEmpty. Operand has 187 states, 90 states have (on average 1.7333333333333334) internal successors, (156), 146 states have internal predecessors, (156), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:40,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:43:40,378 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:40,378 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:43:40,378 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting DUPFFnewErr0REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:40,384 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:40,385 INFO L85 PathProgramCache]: Analyzing trace with hash 228226931, now seen corresponding path program 1 times [2022-02-20 23:43:40,393 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:40,393 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [583099830] [2022-02-20 23:43:40,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:40,394 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:40,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:40,397 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:43:40,398 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:43:40,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:40,465 INFO L263 TraceCheckSpWp]: Trace formula consists of 50 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:43:40,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:40,474 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:40,524 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:43:40,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {190#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {190#true} is VALID [2022-02-20 23:43:40,537 INFO L290 TraceCheckUtils]: 1: Hoare triple {190#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {190#true} is VALID [2022-02-20 23:43:40,537 INFO L272 TraceCheckUtils]: 2: Hoare triple {190#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {190#true} is VALID [2022-02-20 23:43:40,538 INFO L290 TraceCheckUtils]: 3: Hoare triple {190#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {204#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:40,539 INFO L290 TraceCheckUtils]: 4: Hoare triple {204#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[~ans~0#1.base]); {191#false} is VALID [2022-02-20 23:43:40,540 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:43:40,540 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:40,540 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:40,540 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [583099830] [2022-02-20 23:43:40,541 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [583099830] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:40,541 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:40,541 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:43:40,543 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [965510661] [2022-02-20 23:43:40,543 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:40,547 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:43:40,548 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:40,550 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:40,558 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:40,559 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:43:40,559 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:40,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:43:40,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:43:40,577 INFO L87 Difference]: Start difference. First operand has 187 states, 90 states have (on average 1.7333333333333334) internal successors, (156), 146 states have internal predecessors, (156), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:41,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:41,352 INFO L93 Difference]: Finished difference Result 182 states and 218 transitions. [2022-02-20 23:43:41,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:43:41,353 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:43:41,353 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:41,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:41,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 226 transitions. [2022-02-20 23:43:41,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:41,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 226 transitions. [2022-02-20 23:43:41,382 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 226 transitions. [2022-02-20 23:43:41,715 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 226 edges. 226 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:41,726 INFO L225 Difference]: With dead ends: 182 [2022-02-20 23:43:41,726 INFO L226 Difference]: Without dead ends: 180 [2022-02-20 23:43:41,728 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:43:41,730 INFO L933 BasicCegarLoop]: 203 mSDtfsCounter, 22 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 344 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:41,731 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 344 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:43:41,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2022-02-20 23:43:41,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 180. [2022-02-20 23:43:41,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:41,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:41,785 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:41,787 INFO L87 Difference]: Start difference. First operand 180 states. Second operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:41,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:41,809 INFO L93 Difference]: Finished difference Result 180 states and 216 transitions. [2022-02-20 23:43:41,809 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 216 transitions. [2022-02-20 23:43:41,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:41,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:41,819 INFO L74 IsIncluded]: Start isIncluded. First operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 180 states. [2022-02-20 23:43:41,820 INFO L87 Difference]: Start difference. First operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 180 states. [2022-02-20 23:43:41,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:41,836 INFO L93 Difference]: Finished difference Result 180 states and 216 transitions. [2022-02-20 23:43:41,836 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 216 transitions. [2022-02-20 23:43:41,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:41,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:41,838 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:41,841 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:41,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 180 states, 87 states have (on average 1.6781609195402298) internal successors, (146), 139 states have internal predecessors, (146), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:41,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 180 states to 180 states and 216 transitions. [2022-02-20 23:43:41,857 INFO L78 Accepts]: Start accepts. Automaton has 180 states and 216 transitions. Word has length 5 [2022-02-20 23:43:41,857 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:41,857 INFO L470 AbstractCegarLoop]: Abstraction has 180 states and 216 transitions. [2022-02-20 23:43:41,858 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:41,858 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 216 transitions. [2022-02-20 23:43:41,858 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:43:41,858 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:41,858 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:43:41,868 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:43:42,064 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:43:42,065 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting DUPFFnewErr1REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:42,066 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:42,066 INFO L85 PathProgramCache]: Analyzing trace with hash 228226932, now seen corresponding path program 1 times [2022-02-20 23:43:42,066 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:42,066 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [341568562] [2022-02-20 23:43:42,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:42,066 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:42,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:42,069 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:43:42,070 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:43:42,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:42,143 INFO L263 TraceCheckSpWp]: Trace formula consists of 50 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:43:42,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:42,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:42,173 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:43:42,181 INFO L290 TraceCheckUtils]: 0: Hoare triple {929#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {929#true} is VALID [2022-02-20 23:43:42,181 INFO L290 TraceCheckUtils]: 1: Hoare triple {929#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {929#true} is VALID [2022-02-20 23:43:42,181 INFO L272 TraceCheckUtils]: 2: Hoare triple {929#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {929#true} is VALID [2022-02-20 23:43:42,182 INFO L290 TraceCheckUtils]: 3: Hoare triple {929#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {943#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:43:42,183 INFO L290 TraceCheckUtils]: 4: Hoare triple {943#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(8bv32, ~ans~0#1.offset)), #length[~ans~0#1.base]) && ~bvule32(~bvadd32(8bv32, ~ans~0#1.offset), ~bvadd32(4bv32, ~bvadd32(8bv32, ~ans~0#1.offset)))) && ~bvule32(0bv32, ~bvadd32(8bv32, ~ans~0#1.offset))); {930#false} is VALID [2022-02-20 23:43:42,183 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:43:42,183 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:42,183 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:42,184 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [341568562] [2022-02-20 23:43:42,186 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [341568562] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:42,187 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:42,187 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:43:42,187 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [680827115] [2022-02-20 23:43:42,187 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:42,188 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:43:42,188 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:42,188 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:42,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:42,223 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:43:42,223 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:42,224 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:43:42,224 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:43:42,224 INFO L87 Difference]: Start difference. First operand 180 states and 216 transitions. Second operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:42,969 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:42,969 INFO L93 Difference]: Finished difference Result 184 states and 225 transitions. [2022-02-20 23:43:42,969 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:43:42,970 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:43:42,970 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:42,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:42,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 228 transitions. [2022-02-20 23:43:42,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:42,977 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 228 transitions. [2022-02-20 23:43:42,977 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 228 transitions. [2022-02-20 23:43:43,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 228 edges. 228 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:43,210 INFO L225 Difference]: With dead ends: 184 [2022-02-20 23:43:43,210 INFO L226 Difference]: Without dead ends: 184 [2022-02-20 23:43:43,210 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:43:43,211 INFO L933 BasicCegarLoop]: 210 mSDtfsCounter, 6 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 67 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 360 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 67 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:43,211 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 360 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 67 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:43:43,212 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 184 states. [2022-02-20 23:43:43,217 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 184 to 181. [2022-02-20 23:43:43,218 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:43,218 INFO L82 GeneralOperation]: Start isEquivalent. First operand 184 states. Second operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:43,219 INFO L74 IsIncluded]: Start isIncluded. First operand 184 states. Second operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:43,219 INFO L87 Difference]: Start difference. First operand 184 states. Second operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:43,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:43,225 INFO L93 Difference]: Finished difference Result 184 states and 225 transitions. [2022-02-20 23:43:43,225 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 225 transitions. [2022-02-20 23:43:43,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:43,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:43,226 INFO L74 IsIncluded]: Start isIncluded. First operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 184 states. [2022-02-20 23:43:43,227 INFO L87 Difference]: Start difference. First operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 184 states. [2022-02-20 23:43:43,233 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:43,233 INFO L93 Difference]: Finished difference Result 184 states and 225 transitions. [2022-02-20 23:43:43,233 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 225 transitions. [2022-02-20 23:43:43,234 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:43,234 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:43,234 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:43,234 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:43,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 181 states, 89 states have (on average 1.651685393258427) internal successors, (147), 140 states have internal predecessors, (147), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:43,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 217 transitions. [2022-02-20 23:43:43,240 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 217 transitions. Word has length 5 [2022-02-20 23:43:43,240 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:43,240 INFO L470 AbstractCegarLoop]: Abstraction has 181 states and 217 transitions. [2022-02-20 23:43:43,240 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:43,241 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 217 transitions. [2022-02-20 23:43:43,241 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:43:43,241 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:43,241 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:43,249 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:43:43,447 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:43:43,448 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting DUPFFnewErr3REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:43,449 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:43,449 INFO L85 PathProgramCache]: Analyzing trace with hash 282747829, now seen corresponding path program 1 times [2022-02-20 23:43:43,449 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:43,449 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [784351321] [2022-02-20 23:43:43,450 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:43,450 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:43,450 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:43,451 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:43:43,453 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:43:43,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:43,509 INFO L263 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:43:43,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:43,517 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:43,542 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:43:43,547 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:43:43,611 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:43:43,612 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2022-02-20 23:43:43,634 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:43:43,634 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:43:43,652 INFO L290 TraceCheckUtils]: 0: Hoare triple {1679#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {1679#true} is VALID [2022-02-20 23:43:43,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {1679#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {1679#true} is VALID [2022-02-20 23:43:43,652 INFO L272 TraceCheckUtils]: 2: Hoare triple {1679#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {1679#true} is VALID [2022-02-20 23:43:43,653 INFO L290 TraceCheckUtils]: 3: Hoare triple {1679#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {1693#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:43:43,654 INFO L290 TraceCheckUtils]: 4: Hoare triple {1693#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {1693#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:43:43,655 INFO L290 TraceCheckUtils]: 5: Hoare triple {1693#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {1700#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:43:43,656 INFO L290 TraceCheckUtils]: 6: Hoare triple {1700#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (= (select |#length| |DUPFFnew_~ans~0#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(8bv32, ~ans~0#1.offset)), #length[~ans~0#1.base]) && ~bvule32(~bvadd32(8bv32, ~ans~0#1.offset), ~bvadd32(4bv32, ~bvadd32(8bv32, ~ans~0#1.offset)))) && ~bvule32(0bv32, ~bvadd32(8bv32, ~ans~0#1.offset))); {1680#false} is VALID [2022-02-20 23:43:43,656 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:43:43,656 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:43,656 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:43,657 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [784351321] [2022-02-20 23:43:43,657 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [784351321] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:43,657 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:43,657 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:43:43,657 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [847185978] [2022-02-20 23:43:43,657 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:43,658 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:43:43,658 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:43,658 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:43,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:43,667 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:43:43,667 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:43,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:43:43,668 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:43:43,668 INFO L87 Difference]: Start difference. First operand 181 states and 217 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:44,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:44,957 INFO L93 Difference]: Finished difference Result 177 states and 213 transitions. [2022-02-20 23:43:44,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:43:44,957 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:43:44,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:44,971 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:44,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 215 transitions. [2022-02-20 23:43:44,975 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:44,979 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 215 transitions. [2022-02-20 23:43:44,979 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 215 transitions. [2022-02-20 23:43:45,191 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:45,195 INFO L225 Difference]: With dead ends: 177 [2022-02-20 23:43:45,196 INFO L226 Difference]: Without dead ends: 177 [2022-02-20 23:43:45,196 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 4 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:43:45,197 INFO L933 BasicCegarLoop]: 200 mSDtfsCounter, 17 mSDsluCounter, 261 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 461 SdHoareTripleChecker+Invalid, 139 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:45,197 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 461 Invalid, 139 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:43:45,198 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-02-20 23:43:45,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 175. [2022-02-20 23:43:45,202 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:45,202 INFO L82 GeneralOperation]: Start isEquivalent. First operand 177 states. Second operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:45,203 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:45,203 INFO L87 Difference]: Start difference. First operand 177 states. Second operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:45,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:45,210 INFO L93 Difference]: Finished difference Result 177 states and 213 transitions. [2022-02-20 23:43:45,211 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 213 transitions. [2022-02-20 23:43:45,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:45,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:45,212 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 177 states. [2022-02-20 23:43:45,212 INFO L87 Difference]: Start difference. First operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 177 states. [2022-02-20 23:43:45,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:45,219 INFO L93 Difference]: Finished difference Result 177 states and 213 transitions. [2022-02-20 23:43:45,219 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 213 transitions. [2022-02-20 23:43:45,220 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:45,220 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:45,220 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:45,220 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:45,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 87 states have (on average 1.6206896551724137) internal successors, (141), 134 states have internal predecessors, (141), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:45,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 211 transitions. [2022-02-20 23:43:45,227 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 211 transitions. Word has length 7 [2022-02-20 23:43:45,228 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:45,228 INFO L470 AbstractCegarLoop]: Abstraction has 175 states and 211 transitions. [2022-02-20 23:43:45,228 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), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:45,228 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 211 transitions. [2022-02-20 23:43:45,228 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:43:45,228 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:45,229 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:45,250 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:43:45,435 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:43:45,436 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting DUPFFnewErr6ASSERT_VIOLATIONMEMORY_DEREFERENCE === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:45,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:45,436 INFO L85 PathProgramCache]: Analyzing trace with hash -1865414411, now seen corresponding path program 1 times [2022-02-20 23:43:45,437 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:45,437 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1636904832] [2022-02-20 23:43:45,437 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:45,437 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:45,437 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:45,438 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:43:45,440 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:43:45,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:45,507 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:43:45,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:45,519 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:45,549 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:43:45,568 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:43:45,593 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 9 [2022-02-20 23:43:45,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {2409#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {2409#true} is VALID [2022-02-20 23:43:45,612 INFO L290 TraceCheckUtils]: 1: Hoare triple {2409#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {2409#true} is VALID [2022-02-20 23:43:45,612 INFO L272 TraceCheckUtils]: 2: Hoare triple {2409#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {2409#true} is VALID [2022-02-20 23:43:45,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {2409#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {2409#true} is VALID [2022-02-20 23:43:45,612 INFO L290 TraceCheckUtils]: 4: Hoare triple {2409#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {2409#true} is VALID [2022-02-20 23:43:45,613 INFO L290 TraceCheckUtils]: 5: Hoare triple {2409#true} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {2429#(= (select |#valid| |DUPFFnew_#t~malloc33#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:45,614 INFO L290 TraceCheckUtils]: 6: Hoare triple {2429#(= (select |#valid| |DUPFFnew_#t~malloc33#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {2433#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:43:45,615 INFO L290 TraceCheckUtils]: 7: Hoare triple {2433#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {2433#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:43:45,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {2433#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {2440#(= (select |#valid| |DUPFFnew_#t~mem34#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:45,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {2440#(= (select |#valid| |DUPFFnew_#t~mem34#1.base|) (_ bv1 1))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {2444#(= (select |#valid| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:45,617 INFO L290 TraceCheckUtils]: 10: Hoare triple {2444#(= (select |#valid| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]); {2410#false} is VALID [2022-02-20 23:43:45,617 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:43:45,617 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:45,617 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:45,617 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1636904832] [2022-02-20 23:43:45,617 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1636904832] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:45,617 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:45,617 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:43:45,617 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [284892642] [2022-02-20 23:43:45,617 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:45,618 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:43:45,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:45,618 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:45,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:45,629 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:43:45,629 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:45,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:43:45,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:43:45,629 INFO L87 Difference]: Start difference. First operand 175 states and 211 transitions. Second operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:48,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:48,191 INFO L93 Difference]: Finished difference Result 186 states and 233 transitions. [2022-02-20 23:43:48,191 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:43:48,191 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:43:48,191 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:48,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:48,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 234 transitions. [2022-02-20 23:43:48,194 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:48,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 234 transitions. [2022-02-20 23:43:48,197 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 234 transitions. [2022-02-20 23:43:48,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:48,453 INFO L225 Difference]: With dead ends: 186 [2022-02-20 23:43:48,453 INFO L226 Difference]: Without dead ends: 186 [2022-02-20 23:43:48,453 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=33, Invalid=77, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:43:48,454 INFO L933 BasicCegarLoop]: 209 mSDtfsCounter, 28 mSDsluCounter, 602 mSDsCounter, 0 mSdLazyCounter, 262 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 811 SdHoareTripleChecker+Invalid, 271 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 262 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:48,454 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 811 Invalid, 271 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 262 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:43:48,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 186 states. [2022-02-20 23:43:48,458 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 186 to 174. [2022-02-20 23:43:48,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:48,474 INFO L82 GeneralOperation]: Start isEquivalent. First operand 186 states. Second operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:48,475 INFO L74 IsIncluded]: Start isIncluded. First operand 186 states. Second operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:48,475 INFO L87 Difference]: Start difference. First operand 186 states. Second operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:48,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:48,491 INFO L93 Difference]: Finished difference Result 186 states and 233 transitions. [2022-02-20 23:43:48,491 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 233 transitions. [2022-02-20 23:43:48,493 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:48,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:48,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 186 states. [2022-02-20 23:43:48,495 INFO L87 Difference]: Start difference. First operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 186 states. [2022-02-20 23:43:48,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:48,500 INFO L93 Difference]: Finished difference Result 186 states and 233 transitions. [2022-02-20 23:43:48,500 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 233 transitions. [2022-02-20 23:43:48,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:48,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:48,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:48,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:48,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 87 states have (on average 1.6091954022988506) internal successors, (140), 133 states have internal predecessors, (140), 35 states have call successors, (35), 8 states have call predecessors, (35), 8 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:48,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 210 transitions. [2022-02-20 23:43:48,505 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 210 transitions. Word has length 11 [2022-02-20 23:43:48,506 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:48,506 INFO L470 AbstractCegarLoop]: Abstraction has 174 states and 210 transitions. [2022-02-20 23:43:48,506 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.0) internal successors, (10), 6 states have internal predecessors, (10), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:48,506 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 210 transitions. [2022-02-20 23:43:48,506 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:43:48,506 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:48,506 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:48,525 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:43:48,713 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:43:48,714 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting DUPFFnewErr7ASSERT_VIOLATIONMEMORY_DEREFERENCE === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:48,715 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:48,715 INFO L85 PathProgramCache]: Analyzing trace with hash -1993271845, now seen corresponding path program 1 times [2022-02-20 23:43:48,716 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:48,716 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [594262168] [2022-02-20 23:43:48,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:48,716 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:48,716 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:48,717 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:43:48,718 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:43:48,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:48,804 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:43:48,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:48,816 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:48,875 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 10 treesize of output 9 [2022-02-20 23:43:48,918 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:43:48,926 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:43:48,986 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:43:48,990 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-02-20 23:43:49,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {3189#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {3189#true} is VALID [2022-02-20 23:43:49,053 INFO L290 TraceCheckUtils]: 1: Hoare triple {3189#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {3189#true} is VALID [2022-02-20 23:43:49,053 INFO L272 TraceCheckUtils]: 2: Hoare triple {3189#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {3200#(= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))} is VALID [2022-02-20 23:43:49,054 INFO L290 TraceCheckUtils]: 3: Hoare triple {3200#(= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {3204#(= |DUPFFnew_~maxdeg#1| (_ bv1 32))} is VALID [2022-02-20 23:43:49,054 INFO L290 TraceCheckUtils]: 4: Hoare triple {3204#(= |DUPFFnew_~maxdeg#1| (_ bv1 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {3204#(= |DUPFFnew_~maxdeg#1| (_ bv1 32))} is VALID [2022-02-20 23:43:49,056 INFO L290 TraceCheckUtils]: 5: Hoare triple {3204#(= |DUPFFnew_~maxdeg#1| (_ bv1 32))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {3211#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|)) (select |#length| |DUPFFnew_#t~malloc33#1.base|)) (= |DUPFFnew_#t~malloc33#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:43:49,058 INFO L290 TraceCheckUtils]: 6: Hoare triple {3211#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|)) (select |#length| |DUPFFnew_#t~malloc33#1.base|)) (= |DUPFFnew_#t~malloc33#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {3215#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:43:49,058 INFO L290 TraceCheckUtils]: 7: Hoare triple {3215#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {3215#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:43:49,059 INFO L290 TraceCheckUtils]: 8: Hoare triple {3215#(and (= |DUPFFnew_~maxdeg#1| (_ bv1 32)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)) (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {3222#(and (= (select |#length| |DUPFFnew_#t~mem34#1.base|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (= |DUPFFnew_#t~mem34#1.offset| (_ bv0 32)) (= |DUPFFnew_~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:49,059 INFO L290 TraceCheckUtils]: 9: Hoare triple {3222#(and (= (select |#length| |DUPFFnew_#t~mem34#1.base|) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (= |DUPFFnew_#t~mem34#1.offset| (_ bv0 32)) (= |DUPFFnew_~maxdeg#1| (_ bv1 32)))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {3226#(and (= (_ bv8 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (= (_ bv8 32) (select |#length| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|)) (= |DUPFFnew_#Ultimate.C_memset_#ptr#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:43:49,060 INFO L290 TraceCheckUtils]: 10: Hoare triple {3226#(and (= (_ bv8 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (= (_ bv8 32) (select |#length| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|)) (= |DUPFFnew_#Ultimate.C_memset_#ptr#1.offset| (_ bv0 32)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {3226#(and (= (_ bv8 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (= (_ bv8 32) (select |#length| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|)) (= |DUPFFnew_#Ultimate.C_memset_#ptr#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:43:49,060 INFO L290 TraceCheckUtils]: 11: Hoare triple {3226#(and (= (_ bv8 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (= (_ bv8 32) (select |#length| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|)) (= |DUPFFnew_#Ultimate.C_memset_#ptr#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset)); {3190#false} is VALID [2022-02-20 23:43:49,061 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:43:49,061 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:49,061 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:49,061 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [594262168] [2022-02-20 23:43:49,061 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [594262168] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:49,061 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:49,061 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:43:49,061 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [914775635] [2022-02-20 23:43:49,061 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:49,061 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:43:49,061 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:49,062 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:49,076 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:49,076 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:43:49,076 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:49,076 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:43:49,076 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:43:49,076 INFO L87 Difference]: Start difference. First operand 174 states and 210 transitions. Second operand has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:51,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:51,738 INFO L93 Difference]: Finished difference Result 197 states and 234 transitions. [2022-02-20 23:43:51,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:43:51,738 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:43:51,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:51,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:51,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 236 transitions. [2022-02-20 23:43:51,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:51,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 236 transitions. [2022-02-20 23:43:51,746 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 236 transitions. [2022-02-20 23:43:51,971 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:51,974 INFO L225 Difference]: With dead ends: 197 [2022-02-20 23:43:51,974 INFO L226 Difference]: Without dead ends: 197 [2022-02-20 23:43:51,974 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=85, Invalid=187, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:43:51,975 INFO L933 BasicCegarLoop]: 196 mSDtfsCounter, 49 mSDsluCounter, 860 mSDsCounter, 0 mSdLazyCounter, 217 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 1056 SdHoareTripleChecker+Invalid, 233 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 217 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:51,975 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 1056 Invalid, 233 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 217 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:43:51,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-02-20 23:43:51,979 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 190. [2022-02-20 23:43:51,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:51,982 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:51,982 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:51,982 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:52,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:52,007 INFO L93 Difference]: Finished difference Result 197 states and 234 transitions. [2022-02-20 23:43:52,007 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 234 transitions. [2022-02-20 23:43:52,008 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:52,008 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:52,009 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 197 states. [2022-02-20 23:43:52,009 INFO L87 Difference]: Start difference. First operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) Second operand 197 states. [2022-02-20 23:43:52,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:52,015 INFO L93 Difference]: Finished difference Result 197 states and 234 transitions. [2022-02-20 23:43:52,016 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 234 transitions. [2022-02-20 23:43:52,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:52,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:52,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:52,017 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:52,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 102 states have (on average 1.5294117647058822) internal successors, (156), 148 states have internal predecessors, (156), 35 states have call successors, (35), 9 states have call predecessors, (35), 9 states have return successors, (35), 35 states have call predecessors, (35), 35 states have call successors, (35) [2022-02-20 23:43:52,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 226 transitions. [2022-02-20 23:43:52,027 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 226 transitions. Word has length 12 [2022-02-20 23:43:52,027 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:52,027 INFO L470 AbstractCegarLoop]: Abstraction has 190 states and 226 transitions. [2022-02-20 23:43:52,027 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:43:52,028 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 226 transitions. [2022-02-20 23:43:52,028 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:43:52,028 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:52,028 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:52,047 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:43:52,247 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:43:52,249 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:52,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:52,250 INFO L85 PathProgramCache]: Analyzing trace with hash 335042805, now seen corresponding path program 1 times [2022-02-20 23:43:52,250 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:52,250 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [539242136] [2022-02-20 23:43:52,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:52,251 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:52,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:52,252 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:43:52,253 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:43:52,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:52,330 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:43:52,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:52,344 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:52,449 INFO L290 TraceCheckUtils]: 0: Hoare triple {4031#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {4031#true} is VALID [2022-02-20 23:43:52,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {4031#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {4031#true} is VALID [2022-02-20 23:43:52,449 INFO L272 TraceCheckUtils]: 2: Hoare triple {4031#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {4031#true} is VALID [2022-02-20 23:43:52,449 INFO L290 TraceCheckUtils]: 3: Hoare triple {4031#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,450 INFO L290 TraceCheckUtils]: 4: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:52,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {4045#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {4064#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:43:52,456 INFO L290 TraceCheckUtils]: 10: Hoare triple {4064#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {4064#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:43:52,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {4064#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {4071#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} is VALID [2022-02-20 23:43:52,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {4071#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,458 INFO L290 TraceCheckUtils]: 13: Hoare triple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,458 INFO L290 TraceCheckUtils]: 14: Hoare triple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,459 INFO L290 TraceCheckUtils]: 15: Hoare triple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,460 INFO L290 TraceCheckUtils]: 17: Hoare triple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume true; {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:52,461 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4075#(not (bvult (_ bv0 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} {4031#true} #309#return; {4032#false} is VALID [2022-02-20 23:43:52,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {4032#false} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {4032#false} is VALID [2022-02-20 23:43:52,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {4032#false} assume !(1bv1 == #valid[main_~f~0#1.base]); {4032#false} is VALID [2022-02-20 23:43:52,461 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:43:52,461 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:52,461 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:52,461 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [539242136] [2022-02-20 23:43:52,461 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [539242136] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:52,461 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:52,461 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:43:52,461 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [633419848] [2022-02-20 23:43:52,461 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:52,462 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-02-20 23:43:52,462 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:52,462 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:52,492 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:52,492 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:43:52,492 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:52,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:43:52,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:43:52,493 INFO L87 Difference]: Start difference. First operand 190 states and 226 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:54,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:54,154 INFO L93 Difference]: Finished difference Result 209 states and 253 transitions. [2022-02-20 23:43:54,154 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:43:54,154 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-02-20 23:43:54,155 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:54,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:54,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 232 transitions. [2022-02-20 23:43:54,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:54,160 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 232 transitions. [2022-02-20 23:43:54,160 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 232 transitions. [2022-02-20 23:43:54,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:54,400 INFO L225 Difference]: With dead ends: 209 [2022-02-20 23:43:54,400 INFO L226 Difference]: Without dead ends: 203 [2022-02-20 23:43:54,400 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:43:54,401 INFO L933 BasicCegarLoop]: 196 mSDtfsCounter, 37 mSDsluCounter, 745 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 941 SdHoareTripleChecker+Invalid, 111 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:54,401 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 941 Invalid, 111 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:43:54,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-02-20 23:43:54,408 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 198. [2022-02-20 23:43:54,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:54,411 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:54,412 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:54,412 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:54,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:54,428 INFO L93 Difference]: Finished difference Result 203 states and 247 transitions. [2022-02-20 23:43:54,428 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 247 transitions. [2022-02-20 23:43:54,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:54,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:54,429 INFO L74 IsIncluded]: Start isIncluded. First operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 203 states. [2022-02-20 23:43:54,430 INFO L87 Difference]: Start difference. First operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 203 states. [2022-02-20 23:43:54,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:54,436 INFO L93 Difference]: Finished difference Result 203 states and 247 transitions. [2022-02-20 23:43:54,436 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 247 transitions. [2022-02-20 23:43:54,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:54,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:54,437 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:54,437 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:54,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 198 states, 109 states have (on average 1.5045871559633028) internal successors, (164), 156 states have internal predecessors, (164), 35 states have call successors, (35), 9 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:54,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 198 states to 198 states and 238 transitions. [2022-02-20 23:43:54,442 INFO L78 Accepts]: Start accepts. Automaton has 198 states and 238 transitions. Word has length 21 [2022-02-20 23:43:54,442 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:54,442 INFO L470 AbstractCegarLoop]: Abstraction has 198 states and 238 transitions. [2022-02-20 23:43:54,442 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 6 states have internal predecessors, (19), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:54,442 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 238 transitions. [2022-02-20 23:43:54,443 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:43:54,443 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:54,443 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:54,453 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:43:54,652 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:43:54,652 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:54,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:54,652 INFO L85 PathProgramCache]: Analyzing trace with hash 370721495, now seen corresponding path program 1 times [2022-02-20 23:43:54,653 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:54,653 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1245903526] [2022-02-20 23:43:54,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:43:54,653 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:54,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:54,654 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:43:54,656 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:43:54,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:54,750 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:43:54,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:54,760 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:54,893 INFO L290 TraceCheckUtils]: 0: Hoare triple {4918#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {4918#true} is VALID [2022-02-20 23:43:54,894 INFO L290 TraceCheckUtils]: 1: Hoare triple {4918#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {4918#true} is VALID [2022-02-20 23:43:54,894 INFO L272 TraceCheckUtils]: 2: Hoare triple {4918#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {4918#true} is VALID [2022-02-20 23:43:54,894 INFO L290 TraceCheckUtils]: 3: Hoare triple {4918#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,894 INFO L290 TraceCheckUtils]: 4: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,895 INFO L290 TraceCheckUtils]: 6: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,895 INFO L290 TraceCheckUtils]: 7: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:43:54,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {4932#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {4951#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:43:54,897 INFO L290 TraceCheckUtils]: 10: Hoare triple {4951#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {4951#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:43:54,897 INFO L290 TraceCheckUtils]: 11: Hoare triple {4951#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {4958#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} is VALID [2022-02-20 23:43:54,898 INFO L290 TraceCheckUtils]: 12: Hoare triple {4958#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {4962#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2022-02-20 23:43:54,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {4962#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967295 32)) (_ bv0 32)))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,903 INFO L290 TraceCheckUtils]: 14: Hoare triple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,904 INFO L290 TraceCheckUtils]: 16: Hoare triple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume true; {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:43:54,906 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4966#(not (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} {4918#true} #309#return; {4919#false} is VALID [2022-02-20 23:43:54,906 INFO L290 TraceCheckUtils]: 20: Hoare triple {4919#false} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {4919#false} is VALID [2022-02-20 23:43:54,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {4919#false} assume !(1bv1 == #valid[main_~f~0#1.base]); {4919#false} is VALID [2022-02-20 23:43:54,906 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:43:54,906 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:43:55,128 INFO L290 TraceCheckUtils]: 21: Hoare triple {4919#false} assume !(1bv1 == #valid[main_~f~0#1.base]); {4919#false} is VALID [2022-02-20 23:43:55,128 INFO L290 TraceCheckUtils]: 20: Hoare triple {4919#false} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {4919#false} is VALID [2022-02-20 23:43:55,129 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} {4918#true} #309#return; {4919#false} is VALID [2022-02-20 23:43:55,129 INFO L290 TraceCheckUtils]: 18: Hoare triple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} assume true; {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,130 INFO L290 TraceCheckUtils]: 17: Hoare triple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,130 INFO L290 TraceCheckUtils]: 16: Hoare triple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,130 INFO L290 TraceCheckUtils]: 15: Hoare triple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,131 INFO L290 TraceCheckUtils]: 14: Hoare triple {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,131 INFO L290 TraceCheckUtils]: 13: Hoare triple {5019#(or (bvult |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {5000#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:43:55,132 INFO L290 TraceCheckUtils]: 12: Hoare triple {5023#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv1 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {5019#(or (bvult |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,132 INFO L290 TraceCheckUtils]: 11: Hoare triple {5027#(or (bvult (_ bv1 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {5023#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv1 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {5027#(or (bvult (_ bv1 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {5027#(or (bvult (_ bv1 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {5027#(or (bvult (_ bv1 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,133 INFO L290 TraceCheckUtils]: 8: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,134 INFO L290 TraceCheckUtils]: 7: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,134 INFO L290 TraceCheckUtils]: 6: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,135 INFO L290 TraceCheckUtils]: 4: Hoare triple {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,135 INFO L290 TraceCheckUtils]: 3: Hoare triple {4918#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {5034#(or (bvult (_ bv1 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:43:55,136 INFO L272 TraceCheckUtils]: 2: Hoare triple {4918#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {4918#true} is VALID [2022-02-20 23:43:55,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {4918#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {4918#true} is VALID [2022-02-20 23:43:55,136 INFO L290 TraceCheckUtils]: 0: Hoare triple {4918#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {4918#true} is VALID [2022-02-20 23:43:55,136 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:43:55,136 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:55,136 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1245903526] [2022-02-20 23:43:55,136 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1245903526] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:43:55,136 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:43:55,136 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-02-20 23:43:55,136 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1288480506] [2022-02-20 23:43:55,136 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:43:55,137 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:43:55,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:55,137 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:43:55,190 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:43:55,191 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:43:55,191 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:55,191 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:43:55,191 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=92, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:43:55,191 INFO L87 Difference]: Start difference. First operand 198 states and 238 transitions. Second operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:43:57,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:57,946 INFO L93 Difference]: Finished difference Result 246 states and 304 transitions. [2022-02-20 23:43:57,946 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:43:57,946 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 22 [2022-02-20 23:43:57,946 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:43:57,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:43:57,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 274 transitions. [2022-02-20 23:43:57,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:43:57,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 274 transitions. [2022-02-20 23:43:57,953 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 274 transitions. [2022-02-20 23:43:58,268 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 274 edges. 274 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:58,291 INFO L225 Difference]: With dead ends: 246 [2022-02-20 23:43:58,291 INFO L226 Difference]: Without dead ends: 234 [2022-02-20 23:43:58,292 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 57 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=177, Invalid=329, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:43:58,295 INFO L933 BasicCegarLoop]: 205 mSDtfsCounter, 132 mSDsluCounter, 1146 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 132 SdHoareTripleChecker+Valid, 1351 SdHoareTripleChecker+Invalid, 248 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:43:58,295 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [132 Valid, 1351 Invalid, 248 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 225 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:43:58,296 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 234 states. [2022-02-20 23:43:58,316 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 234 to 216. [2022-02-20 23:43:58,316 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:43:58,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 234 states. Second operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:58,318 INFO L74 IsIncluded]: Start isIncluded. First operand 234 states. Second operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:58,319 INFO L87 Difference]: Start difference. First operand 234 states. Second operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:58,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:58,323 INFO L93 Difference]: Finished difference Result 234 states and 291 transitions. [2022-02-20 23:43:58,323 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 291 transitions. [2022-02-20 23:43:58,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:58,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:58,324 INFO L74 IsIncluded]: Start isIncluded. First operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 234 states. [2022-02-20 23:43:58,325 INFO L87 Difference]: Start difference. First operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 234 states. [2022-02-20 23:43:58,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:43:58,330 INFO L93 Difference]: Finished difference Result 234 states and 291 transitions. [2022-02-20 23:43:58,330 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 291 transitions. [2022-02-20 23:43:58,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:43:58,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:43:58,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:43:58,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:43:58,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 216 states, 127 states have (on average 1.4960629921259843) internal successors, (190), 173 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:43:58,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 216 states to 216 states and 264 transitions. [2022-02-20 23:43:58,334 INFO L78 Accepts]: Start accepts. Automaton has 216 states and 264 transitions. Word has length 22 [2022-02-20 23:43:58,335 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:43:58,335 INFO L470 AbstractCegarLoop]: Abstraction has 216 states and 264 transitions. [2022-02-20 23:43:58,335 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:43:58,335 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 264 transitions. [2022-02-20 23:43:58,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:43:58,335 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:43:58,335 INFO L514 BasicCegarLoop]: trace histogram [4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:43:58,356 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:43:58,543 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:43:58,543 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:43:58,544 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:43:58,544 INFO L85 PathProgramCache]: Analyzing trace with hash -843792011, now seen corresponding path program 2 times [2022-02-20 23:43:58,544 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:43:58,544 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1041160764] [2022-02-20 23:43:58,544 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:43:58,545 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:43:58,545 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:43:58,546 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:43:58,547 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:43:58,639 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 23:43:58,639 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:43:58,642 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:43:58,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:43:58,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:43:58,717 INFO L290 TraceCheckUtils]: 0: Hoare triple {6010#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {6010#true} is VALID [2022-02-20 23:43:58,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {6010#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {6010#true} is VALID [2022-02-20 23:43:58,718 INFO L272 TraceCheckUtils]: 2: Hoare triple {6010#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {6010#true} is VALID [2022-02-20 23:43:58,718 INFO L290 TraceCheckUtils]: 3: Hoare triple {6010#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {6010#true} is VALID [2022-02-20 23:43:58,719 INFO L290 TraceCheckUtils]: 4: Hoare triple {6010#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {6010#true} is VALID [2022-02-20 23:43:58,720 INFO L290 TraceCheckUtils]: 5: Hoare triple {6010#true} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {6010#true} is VALID [2022-02-20 23:43:58,720 INFO L290 TraceCheckUtils]: 6: Hoare triple {6010#true} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {6010#true} is VALID [2022-02-20 23:43:58,723 INFO L290 TraceCheckUtils]: 7: Hoare triple {6010#true} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {6010#true} is VALID [2022-02-20 23:43:58,723 INFO L290 TraceCheckUtils]: 8: Hoare triple {6010#true} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 9: Hoare triple {6010#true} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 10: Hoare triple {6010#true} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 11: Hoare triple {6010#true} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 12: Hoare triple {6010#true} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 13: Hoare triple {6010#true} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 14: Hoare triple {6010#true} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6010#true} is VALID [2022-02-20 23:43:58,724 INFO L290 TraceCheckUtils]: 15: Hoare triple {6010#true} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6010#true} is VALID [2022-02-20 23:43:58,725 INFO L290 TraceCheckUtils]: 16: Hoare triple {6010#true} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {6010#true} is VALID [2022-02-20 23:43:58,725 INFO L290 TraceCheckUtils]: 17: Hoare triple {6010#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {6010#true} is VALID [2022-02-20 23:43:58,725 INFO L290 TraceCheckUtils]: 18: Hoare triple {6010#true} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {6010#true} is VALID [2022-02-20 23:43:58,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {6010#true} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {6072#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:58,726 INFO L290 TraceCheckUtils]: 20: Hoare triple {6072#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {6076#(= (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:58,726 INFO L290 TraceCheckUtils]: 21: Hoare triple {6076#(= (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))} assume true; {6076#(= (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:58,727 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {6076#(= (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))} {6010#true} #309#return; {6083#(= (select |#valid| |ULTIMATE.start_main_#t~ret65#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:43:58,727 INFO L290 TraceCheckUtils]: 23: Hoare triple {6083#(= (select |#valid| |ULTIMATE.start_main_#t~ret65#1.base|) (_ bv1 1))} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {6087#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|))} is VALID [2022-02-20 23:43:58,728 INFO L290 TraceCheckUtils]: 24: Hoare triple {6087#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|))} assume !(1bv1 == #valid[main_~f~0#1.base]); {6011#false} is VALID [2022-02-20 23:43:58,728 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-02-20 23:43:58,728 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:43:58,728 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:43:58,728 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1041160764] [2022-02-20 23:43:58,728 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1041160764] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:43:58,729 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:43:58,729 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:43:58,729 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054798684] [2022-02-20 23:43:58,729 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:43:58,729 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-02-20 23:43:58,729 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:43:58,730 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:43:58,758 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:43:58,759 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:43:58,759 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:43:58,759 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:43:58,759 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:43:58,759 INFO L87 Difference]: Start difference. First operand 216 states and 264 transitions. Second operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:00,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:00,459 INFO L93 Difference]: Finished difference Result 214 states and 262 transitions. [2022-02-20 23:44:00,459 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:00,459 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-02-20 23:44:00,459 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:00,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:00,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 210 transitions. [2022-02-20 23:44:00,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:00,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 210 transitions. [2022-02-20 23:44:00,463 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 210 transitions. [2022-02-20 23:44:00,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:00,661 INFO L225 Difference]: With dead ends: 214 [2022-02-20 23:44:00,662 INFO L226 Difference]: Without dead ends: 214 [2022-02-20 23:44:00,662 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:44:00,662 INFO L933 BasicCegarLoop]: 192 mSDtfsCounter, 23 mSDsluCounter, 565 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 757 SdHoareTripleChecker+Invalid, 256 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:00,662 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 757 Invalid, 256 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:00,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-02-20 23:44:00,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 214. [2022-02-20 23:44:00,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:00,666 INFO L82 GeneralOperation]: Start isEquivalent. First operand 214 states. Second operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:44:00,667 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:44:00,669 INFO L87 Difference]: Start difference. First operand 214 states. Second operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:44:00,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:00,672 INFO L93 Difference]: Finished difference Result 214 states and 262 transitions. [2022-02-20 23:44:00,673 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 262 transitions. [2022-02-20 23:44:00,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:00,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:00,679 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 214 states. [2022-02-20 23:44:00,680 INFO L87 Difference]: Start difference. First operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) Second operand 214 states. [2022-02-20 23:44:00,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:00,693 INFO L93 Difference]: Finished difference Result 214 states and 262 transitions. [2022-02-20 23:44:00,693 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 262 transitions. [2022-02-20 23:44:00,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:00,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:00,694 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:00,694 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:00,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 127 states have (on average 1.4803149606299213) internal successors, (188), 171 states have internal predecessors, (188), 35 states have call successors, (35), 10 states have call predecessors, (35), 10 states have return successors, (39), 35 states have call predecessors, (39), 35 states have call successors, (39) [2022-02-20 23:44:00,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 262 transitions. [2022-02-20 23:44:00,711 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 262 transitions. Word has length 25 [2022-02-20 23:44:00,711 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:00,711 INFO L470 AbstractCegarLoop]: Abstraction has 214 states and 262 transitions. [2022-02-20 23:44:00,712 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.0) internal successors, (20), 5 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:00,712 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 262 transitions. [2022-02-20 23:44:00,712 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:44:00,712 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:00,712 INFO L514 BasicCegarLoop]: trace histogram [4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:00,724 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:44:00,919 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:44:00,920 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:44:00,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:00,920 INFO L85 PathProgramCache]: Analyzing trace with hash -843792010, now seen corresponding path program 1 times [2022-02-20 23:44:00,920 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:00,920 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1913745135] [2022-02-20 23:44:00,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:00,921 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:00,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:00,922 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:44:00,924 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:44:01,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:01,035 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:44:01,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:01,049 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:01,291 INFO L290 TraceCheckUtils]: 0: Hoare triple {6948#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {6948#true} is VALID [2022-02-20 23:44:01,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {6948#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {6948#true} is VALID [2022-02-20 23:44:01,292 INFO L272 TraceCheckUtils]: 2: Hoare triple {6948#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {6948#true} is VALID [2022-02-20 23:44:01,292 INFO L290 TraceCheckUtils]: 3: Hoare triple {6948#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,292 INFO L290 TraceCheckUtils]: 4: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,293 INFO L290 TraceCheckUtils]: 6: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,293 INFO L290 TraceCheckUtils]: 7: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,294 INFO L290 TraceCheckUtils]: 8: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} is VALID [2022-02-20 23:44:01,294 INFO L290 TraceCheckUtils]: 9: Hoare triple {6962#(= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|)} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {6981#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:44:01,294 INFO L290 TraceCheckUtils]: 10: Hoare triple {6981#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {6981#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} is VALID [2022-02-20 23:44:01,295 INFO L290 TraceCheckUtils]: 11: Hoare triple {6981#(= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {6988#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} is VALID [2022-02-20 23:44:01,295 INFO L290 TraceCheckUtils]: 12: Hoare triple {6988#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6992#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967295 32)) (_ bv0 32)))} is VALID [2022-02-20 23:44:01,296 INFO L290 TraceCheckUtils]: 13: Hoare triple {6992#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967295 32)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {6996#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967294 32)) (_ bv0 32)))} is VALID [2022-02-20 23:44:01,297 INFO L290 TraceCheckUtils]: 14: Hoare triple {6996#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967294 32)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7000#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (_ bv0 32) (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967293 32))))} is VALID [2022-02-20 23:44:01,297 INFO L290 TraceCheckUtils]: 15: Hoare triple {7000#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (_ bv0 32) (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4294967293 32))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7004#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd (_ bv4294967292 32) |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1|) (_ bv0 32)))} is VALID [2022-02-20 23:44:01,298 INFO L290 TraceCheckUtils]: 16: Hoare triple {7004#(and (= |DUPFFnew_#Ultimate.C_memset_#amount#1| (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (bvadd (_ bv4294967292 32) |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1|) (_ bv0 32)))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,299 INFO L290 TraceCheckUtils]: 17: Hoare triple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,300 INFO L290 TraceCheckUtils]: 18: Hoare triple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,300 INFO L290 TraceCheckUtils]: 19: Hoare triple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,301 INFO L290 TraceCheckUtils]: 20: Hoare triple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,301 INFO L290 TraceCheckUtils]: 21: Hoare triple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} assume true; {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,302 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {7008#(not (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))))} {6948#true} #309#return; {6949#false} is VALID [2022-02-20 23:44:01,302 INFO L290 TraceCheckUtils]: 23: Hoare triple {6949#false} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {6949#false} is VALID [2022-02-20 23:44:01,302 INFO L290 TraceCheckUtils]: 24: Hoare triple {6949#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)), #length[main_~f~0#1.base]) && ~bvule32(~bvadd32(8bv32, main_~f~0#1.offset), ~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)))) && ~bvule32(0bv32, ~bvadd32(8bv32, main_~f~0#1.offset))); {6949#false} is VALID [2022-02-20 23:44:01,302 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:01,302 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:01,698 INFO L290 TraceCheckUtils]: 24: Hoare triple {6949#false} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)), #length[main_~f~0#1.base]) && ~bvule32(~bvadd32(8bv32, main_~f~0#1.offset), ~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)))) && ~bvule32(0bv32, ~bvadd32(8bv32, main_~f~0#1.offset))); {6949#false} is VALID [2022-02-20 23:44:01,698 INFO L290 TraceCheckUtils]: 23: Hoare triple {6949#false} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {6949#false} is VALID [2022-02-20 23:44:01,699 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} {6948#true} #309#return; {6949#false} is VALID [2022-02-20 23:44:01,699 INFO L290 TraceCheckUtils]: 21: Hoare triple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} assume true; {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,699 INFO L290 TraceCheckUtils]: 20: Hoare triple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,700 INFO L290 TraceCheckUtils]: 19: Hoare triple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,700 INFO L290 TraceCheckUtils]: 18: Hoare triple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,700 INFO L290 TraceCheckUtils]: 17: Hoare triple {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,701 INFO L290 TraceCheckUtils]: 16: Hoare triple {7061#(or (bvult |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {7042#(not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32)))} is VALID [2022-02-20 23:44:01,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {7065#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv1 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7061#(or (bvult |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:44:01,728 INFO L290 TraceCheckUtils]: 14: Hoare triple {7069#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv2 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7065#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv1 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:44:01,753 INFO L290 TraceCheckUtils]: 13: Hoare triple {7073#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv3 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7069#(or (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv2 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:44:01,776 INFO L290 TraceCheckUtils]: 12: Hoare triple {7077#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {7073#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv3 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|))} is VALID [2022-02-20 23:44:01,776 INFO L290 TraceCheckUtils]: 11: Hoare triple {7081#(or (bvult (_ bv4 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {7077#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (bvadd |DUPFFnew_#Ultimate.C_memset_#t~loopctr71#1| (_ bv4 32)) |DUPFFnew_#Ultimate.C_memset_#amount#1|))} is VALID [2022-02-20 23:44:01,777 INFO L290 TraceCheckUtils]: 10: Hoare triple {7081#(or (bvult (_ bv4 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {7081#(or (bvult (_ bv4 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:44:01,778 INFO L290 TraceCheckUtils]: 9: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {7081#(or (bvult (_ bv4 32) |DUPFFnew_#Ultimate.C_memset_#amount#1|) (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))))} is VALID [2022-02-20 23:44:01,778 INFO L290 TraceCheckUtils]: 8: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,779 INFO L290 TraceCheckUtils]: 7: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,779 INFO L290 TraceCheckUtils]: 6: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,780 INFO L290 TraceCheckUtils]: 5: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,780 INFO L290 TraceCheckUtils]: 4: Hoare triple {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,781 INFO L290 TraceCheckUtils]: 3: Hoare triple {6948#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {7088#(or (not (= |DUPFFnew_#in~maxdeg#1| (_ bv1 32))) (bvult (_ bv4 32) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_~maxdeg#1|))))} is VALID [2022-02-20 23:44:01,781 INFO L272 TraceCheckUtils]: 2: Hoare triple {6948#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {6948#true} is VALID [2022-02-20 23:44:01,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {6948#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {6948#true} is VALID [2022-02-20 23:44:01,781 INFO L290 TraceCheckUtils]: 0: Hoare triple {6948#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {6948#true} is VALID [2022-02-20 23:44:01,781 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:01,781 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:01,781 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1913745135] [2022-02-20 23:44:01,781 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1913745135] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:01,782 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:44:01,782 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-02-20 23:44:01,782 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [949767838] [2022-02-20 23:44:01,782 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:01,782 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 25 [2022-02-20 23:44:01,782 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:01,782 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:01,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:01,912 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:44:01,913 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:01,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:44:01,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=222, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:44:01,913 INFO L87 Difference]: Start difference. First operand 214 states and 262 transitions. Second operand has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:07,128 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:07,129 INFO L93 Difference]: Finished difference Result 285 states and 358 transitions. [2022-02-20 23:44:07,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-02-20 23:44:07,129 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 25 [2022-02-20 23:44:07,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:07,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:07,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 315 transitions. [2022-02-20 23:44:07,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:07,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 315 transitions. [2022-02-20 23:44:07,136 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 315 transitions. [2022-02-20 23:44:07,515 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 315 edges. 315 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:07,518 INFO L225 Difference]: With dead ends: 285 [2022-02-20 23:44:07,518 INFO L226 Difference]: Without dead ends: 267 [2022-02-20 23:44:07,519 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 235 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=437, Invalid=1045, Unknown=0, NotChecked=0, Total=1482 [2022-02-20 23:44:07,519 INFO L933 BasicCegarLoop]: 215 mSDtfsCounter, 203 mSDsluCounter, 1594 mSDsCounter, 0 mSdLazyCounter, 488 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 203 SdHoareTripleChecker+Valid, 1809 SdHoareTripleChecker+Invalid, 551 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 488 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:07,519 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [203 Valid, 1809 Invalid, 551 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 488 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-02-20 23:44:07,520 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 267 states. [2022-02-20 23:44:07,527 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 267 to 222. [2022-02-20 23:44:07,527 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:07,527 INFO L82 GeneralOperation]: Start isEquivalent. First operand 267 states. Second operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:07,530 INFO L74 IsIncluded]: Start isIncluded. First operand 267 states. Second operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:07,531 INFO L87 Difference]: Start difference. First operand 267 states. Second operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:07,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:07,538 INFO L93 Difference]: Finished difference Result 267 states and 338 transitions. [2022-02-20 23:44:07,538 INFO L276 IsEmpty]: Start isEmpty. Operand 267 states and 338 transitions. [2022-02-20 23:44:07,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:07,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:07,539 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 267 states. [2022-02-20 23:44:07,540 INFO L87 Difference]: Start difference. First operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 267 states. [2022-02-20 23:44:07,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:07,545 INFO L93 Difference]: Finished difference Result 267 states and 338 transitions. [2022-02-20 23:44:07,545 INFO L276 IsEmpty]: Start isEmpty. Operand 267 states and 338 transitions. [2022-02-20 23:44:07,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:07,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:07,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:07,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:07,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 134 states have (on average 1.4402985074626866) internal successors, (193), 179 states have internal predecessors, (193), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:07,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 268 transitions. [2022-02-20 23:44:07,549 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 268 transitions. Word has length 25 [2022-02-20 23:44:07,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:07,551 INFO L470 AbstractCegarLoop]: Abstraction has 222 states and 268 transitions. [2022-02-20 23:44:07,551 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.3333333333333335) internal successors, (42), 18 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:07,551 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 268 transitions. [2022-02-20 23:44:07,551 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:44:07,551 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:07,552 INFO L514 BasicCegarLoop]: trace histogram [8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:07,561 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:44:07,759 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:44:07,759 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:44:07,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:07,760 INFO L85 PathProgramCache]: Analyzing trace with hash 168356342, now seen corresponding path program 2 times [2022-02-20 23:44:07,760 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:07,760 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [624462838] [2022-02-20 23:44:07,760 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:44:07,761 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:07,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:07,762 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:44:07,799 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:44:07,858 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-02-20 23:44:07,859 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:44:07,863 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:44:07,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:07,874 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:08,081 INFO L290 TraceCheckUtils]: 0: Hoare triple {8195#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {8195#true} is VALID [2022-02-20 23:44:08,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {8195#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {8195#true} is VALID [2022-02-20 23:44:08,081 INFO L272 TraceCheckUtils]: 2: Hoare triple {8195#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {8195#true} is VALID [2022-02-20 23:44:08,081 INFO L290 TraceCheckUtils]: 3: Hoare triple {8195#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} is VALID [2022-02-20 23:44:08,082 INFO L290 TraceCheckUtils]: 4: Hoare triple {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} is VALID [2022-02-20 23:44:08,083 INFO L290 TraceCheckUtils]: 5: Hoare triple {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} is VALID [2022-02-20 23:44:08,083 INFO L290 TraceCheckUtils]: 6: Hoare triple {8209#(= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|)} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,084 INFO L290 TraceCheckUtils]: 7: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,085 INFO L290 TraceCheckUtils]: 9: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,086 INFO L290 TraceCheckUtils]: 10: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,086 INFO L290 TraceCheckUtils]: 11: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,087 INFO L290 TraceCheckUtils]: 12: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,087 INFO L290 TraceCheckUtils]: 13: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,088 INFO L290 TraceCheckUtils]: 14: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,088 INFO L290 TraceCheckUtils]: 15: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,089 INFO L290 TraceCheckUtils]: 16: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,090 INFO L290 TraceCheckUtils]: 17: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,090 INFO L290 TraceCheckUtils]: 18: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,091 INFO L290 TraceCheckUtils]: 19: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,092 INFO L290 TraceCheckUtils]: 21: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,092 INFO L290 TraceCheckUtils]: 22: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,093 INFO L290 TraceCheckUtils]: 23: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:08,093 INFO L290 TraceCheckUtils]: 24: Hoare triple {8219#(and (= (_ bv0 32) |DUPFFnew_~ans~0#1.offset|) (bvule (bvadd (_ bv12 32) |DUPFFnew_~ans~0#1.offset|) (select |#length| |DUPFFnew_~ans~0#1.base|)))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {8274#(and (bvule (_ bv12 32) (select |#length| |DUPFFnew_#res#1.base|)) (= |DUPFFnew_#res#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:08,094 INFO L290 TraceCheckUtils]: 25: Hoare triple {8274#(and (bvule (_ bv12 32) (select |#length| |DUPFFnew_#res#1.base|)) (= |DUPFFnew_#res#1.offset| (_ bv0 32)))} assume true; {8274#(and (bvule (_ bv12 32) (select |#length| |DUPFFnew_#res#1.base|)) (= |DUPFFnew_#res#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:08,094 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8274#(and (bvule (_ bv12 32) (select |#length| |DUPFFnew_#res#1.base|)) (= |DUPFFnew_#res#1.offset| (_ bv0 32)))} {8195#true} #309#return; {8281#(and (= |ULTIMATE.start_main_#t~ret65#1.offset| (_ bv0 32)) (bvule (_ bv12 32) (select |#length| |ULTIMATE.start_main_#t~ret65#1.base|)))} is VALID [2022-02-20 23:44:08,095 INFO L290 TraceCheckUtils]: 27: Hoare triple {8281#(and (= |ULTIMATE.start_main_#t~ret65#1.offset| (_ bv0 32)) (bvule (_ bv12 32) (select |#length| |ULTIMATE.start_main_#t~ret65#1.base|)))} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {8285#(and (= (_ bv0 32) |ULTIMATE.start_main_~f~0#1.offset|) (bvule (_ bv12 32) (select |#length| |ULTIMATE.start_main_~f~0#1.base|)))} is VALID [2022-02-20 23:44:08,095 INFO L290 TraceCheckUtils]: 28: Hoare triple {8285#(and (= (_ bv0 32) |ULTIMATE.start_main_~f~0#1.offset|) (bvule (_ bv12 32) (select |#length| |ULTIMATE.start_main_~f~0#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)), #length[main_~f~0#1.base]) && ~bvule32(~bvadd32(8bv32, main_~f~0#1.offset), ~bvadd32(4bv32, ~bvadd32(8bv32, main_~f~0#1.offset)))) && ~bvule32(0bv32, ~bvadd32(8bv32, main_~f~0#1.offset))); {8196#false} is VALID [2022-02-20 23:44:08,096 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-02-20 23:44:08,096 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:08,096 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:08,096 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [624462838] [2022-02-20 23:44:08,096 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [624462838] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:08,096 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:08,096 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:44:08,096 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1330033555] [2022-02-20 23:44:08,096 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:08,096 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 29 [2022-02-20 23:44:08,096 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:08,097 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:08,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:08,125 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:44:08,125 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:08,125 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:44:08,125 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:44:08,125 INFO L87 Difference]: Start difference. First operand 222 states and 268 transitions. Second operand has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:09,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:09,853 INFO L93 Difference]: Finished difference Result 220 states and 266 transitions. [2022-02-20 23:44:09,853 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:44:09,854 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 29 [2022-02-20 23:44:09,854 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:09,854 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:09,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 208 transitions. [2022-02-20 23:44:09,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:09,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 208 transitions. [2022-02-20 23:44:09,866 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 208 transitions. [2022-02-20 23:44:10,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:10,067 INFO L225 Difference]: With dead ends: 220 [2022-02-20 23:44:10,067 INFO L226 Difference]: Without dead ends: 220 [2022-02-20 23:44:10,067 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:10,067 INFO L933 BasicCegarLoop]: 192 mSDtfsCounter, 26 mSDsluCounter, 618 mSDsCounter, 0 mSdLazyCounter, 193 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 810 SdHoareTripleChecker+Invalid, 195 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 193 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:10,067 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 810 Invalid, 195 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 193 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:10,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 220 states. [2022-02-20 23:44:10,071 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 220 to 220. [2022-02-20 23:44:10,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:10,072 INFO L82 GeneralOperation]: Start isEquivalent. First operand 220 states. Second operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:10,072 INFO L74 IsIncluded]: Start isIncluded. First operand 220 states. Second operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:10,073 INFO L87 Difference]: Start difference. First operand 220 states. Second operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:10,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:10,077 INFO L93 Difference]: Finished difference Result 220 states and 266 transitions. [2022-02-20 23:44:10,077 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 266 transitions. [2022-02-20 23:44:10,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:10,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:10,078 INFO L74 IsIncluded]: Start isIncluded. First operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 220 states. [2022-02-20 23:44:10,078 INFO L87 Difference]: Start difference. First operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 220 states. [2022-02-20 23:44:10,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:10,082 INFO L93 Difference]: Finished difference Result 220 states and 266 transitions. [2022-02-20 23:44:10,082 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 266 transitions. [2022-02-20 23:44:10,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:10,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:10,083 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:10,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:10,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 220 states, 134 states have (on average 1.4253731343283582) internal successors, (191), 177 states have internal predecessors, (191), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:10,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 266 transitions. [2022-02-20 23:44:10,087 INFO L78 Accepts]: Start accepts. Automaton has 220 states and 266 transitions. Word has length 29 [2022-02-20 23:44:10,087 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:10,087 INFO L470 AbstractCegarLoop]: Abstraction has 220 states and 266 transitions. [2022-02-20 23:44:10,087 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 3.3333333333333335) internal successors, (20), 6 states have internal predecessors, (20), 1 states have call successors, (1), 1 states have call predecessors, (1), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-02-20 23:44:10,087 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 266 transitions. [2022-02-20 23:44:10,088 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:44:10,088 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:10,088 INFO L514 BasicCegarLoop]: trace histogram [8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:10,098 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:44:10,295 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:44:10,295 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:44:10,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:10,296 INFO L85 PathProgramCache]: Analyzing trace with hash 924079462, now seen corresponding path program 1 times [2022-02-20 23:44:10,296 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:10,296 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1486181662] [2022-02-20 23:44:10,296 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:10,297 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:10,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:10,301 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:44:10,303 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:44:10,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:10,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 30 conjunts are in the unsatisfiable core [2022-02-20 23:44:10,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:10,513 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:10,524 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:44:10,553 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:44:10,554 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 24 [2022-02-20 23:44:10,592 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:44:10,734 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,734 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,764 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,765 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,798 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,798 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,832 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,833 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,873 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,873 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,903 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,904 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,935 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,935 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 35 [2022-02-20 23:44:10,965 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:10,965 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 34 treesize of output 35 [2022-02-20 23:44:11,077 INFO L356 Elim1Store]: treesize reduction 296, result has 10.6 percent of original size [2022-02-20 23:44:11,078 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 48 treesize of output 53 [2022-02-20 23:44:11,174 INFO L356 Elim1Store]: treesize reduction 324, result has 10.2 percent of original size [2022-02-20 23:44:11,174 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 55 [2022-02-20 23:44:11,287 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 13 [2022-02-20 23:44:11,324 INFO L290 TraceCheckUtils]: 0: Hoare triple {9170#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {9170#true} is VALID [2022-02-20 23:44:11,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {9170#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {9170#true} is VALID [2022-02-20 23:44:11,324 INFO L272 TraceCheckUtils]: 2: Hoare triple {9170#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {9170#true} is VALID [2022-02-20 23:44:11,325 INFO L290 TraceCheckUtils]: 3: Hoare triple {9170#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {9184#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:11,325 INFO L290 TraceCheckUtils]: 4: Hoare triple {9184#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {9184#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:11,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {9184#(= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {9191#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select |#valid| |DUPFFnew_#t~malloc33#1.base|) (_ bv1 1)) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:11,328 INFO L290 TraceCheckUtils]: 6: Hoare triple {9191#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select |#valid| |DUPFFnew_#t~malloc33#1.base|) (_ bv1 1)) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|)))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,328 INFO L290 TraceCheckUtils]: 7: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,329 INFO L290 TraceCheckUtils]: 8: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {9202#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#t~mem34#1.base|))} is VALID [2022-02-20 23:44:11,329 INFO L290 TraceCheckUtils]: 9: Hoare triple {9202#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#t~mem34#1.base|))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,330 INFO L290 TraceCheckUtils]: 10: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,330 INFO L290 TraceCheckUtils]: 11: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,332 INFO L290 TraceCheckUtils]: 12: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,334 INFO L290 TraceCheckUtils]: 13: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,336 INFO L290 TraceCheckUtils]: 14: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,340 INFO L290 TraceCheckUtils]: 16: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,345 INFO L290 TraceCheckUtils]: 19: Hoare triple {9206#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,350 INFO L290 TraceCheckUtils]: 22: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:11,354 INFO L290 TraceCheckUtils]: 23: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} is VALID [2022-02-20 23:44:13,356 WARN L290 TraceCheckUtils]: 24: Hoare triple {9195#(and (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {9252#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))))} is UNKNOWN [2022-02-20 23:44:13,357 INFO L290 TraceCheckUtils]: 25: Hoare triple {9252#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))))} assume true; {9252#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:44:13,358 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9252#(and (= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1)) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |DUPFFnew_#res#1.base|) (_ bv1 1))))} {9170#true} #309#return; {9259#(and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_#t~ret65#1.base|) (_ bv1 1))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv1 1)) (not (= |ULTIMATE.start_main_#t~ret65#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)))))} is VALID [2022-02-20 23:44:13,359 INFO L290 TraceCheckUtils]: 27: Hoare triple {9259#(and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_#t~ret65#1.base|) (_ bv1 1))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv1 1)) (not (= |ULTIMATE.start_main_#t~ret65#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)))))} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {9263#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) |ULTIMATE.start_main_~f~0#1.base|)) (= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:13,360 INFO L290 TraceCheckUtils]: 28: Hoare triple {9263#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) |ULTIMATE.start_main_~f~0#1.base|)) (= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|)) (_ bv0 1)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|))) (_ bv1 1)))} SUMMARY for call main_#t~mem66#1.base, main_#t~mem66#1.offset := read~$Pointer$(main_~f~0#1.base, ~bvadd32(8bv32, main_~f~0#1.offset), 4bv32); srcloc: L967-2 {9267#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem66#1.base|)) (exists ((|ULTIMATE.start_main_~f~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_main_~f~0#1.base| |ULTIMATE.start_main_#t~mem66#1.base|)) (= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:44:13,361 INFO L290 TraceCheckUtils]: 29: Hoare triple {9267#(and (= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem66#1.base|)) (exists ((|ULTIMATE.start_main_~f~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_main_~f~0#1.base| |ULTIMATE.start_main_#t~mem66#1.base|)) (= (bvadd (_ bv1 1) (select |#valid| |ULTIMATE.start_main_~f~0#1.base|)) (_ bv0 1)))))} assume !(1bv1 == #valid[main_#t~mem66#1.base]); {9171#false} is VALID [2022-02-20 23:44:13,361 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:44:13,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:14,940 WARN L756 TransFormulaUtils]: predicate-based correctness check returned UNKNOWN, hence correctness of interprocedural sequential composition was not checked. [2022-02-20 23:44:15,113 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |c_#valid| (select (select (store |c_#memory_$Pointer$.base| |c_DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |c_DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |c_DUPFFnew_~ans~0#1.offset|))) (_ bv1 1))) is different from false [2022-02-20 23:44:15,180 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |c_#valid| (select (select (store |c_#memory_$Pointer$.base| |c_DUPFFnew_#t~mem34#1.base| v_ArrVal_552) |c_DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |c_DUPFFnew_~ans~0#1.offset|))) (_ bv1 1))) is different from false [2022-02-20 23:44:15,190 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |c_#valid| (let ((.cse0 (bvadd (_ bv8 32) |c_DUPFFnew_~ans~0#1.offset|))) (select (select (store |c_#memory_$Pointer$.base| (select (select |c_#memory_$Pointer$.base| |c_DUPFFnew_~ans~0#1.base|) .cse0) v_ArrVal_552) |c_DUPFFnew_~ans~0#1.base|) .cse0))) (_ bv1 1))) is different from false [2022-02-20 23:44:15,206 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:44:15,206 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 24 treesize of output 25 [2022-02-20 23:44:15,210 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 28 [2022-02-20 23:44:15,213 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:44:22,027 INFO L290 TraceCheckUtils]: 29: Hoare triple {9271#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem66#1.base|))} assume !(1bv1 == #valid[main_#t~mem66#1.base]); {9171#false} is VALID [2022-02-20 23:44:22,028 INFO L290 TraceCheckUtils]: 28: Hoare triple {9275#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|))) (_ bv1 1))} SUMMARY for call main_#t~mem66#1.base, main_#t~mem66#1.offset := read~$Pointer$(main_~f~0#1.base, ~bvadd32(8bv32, main_~f~0#1.offset), 4bv32); srcloc: L967-2 {9271#(= (_ bv1 1) (select |#valid| |ULTIMATE.start_main_#t~mem66#1.base|))} is VALID [2022-02-20 23:44:22,028 INFO L290 TraceCheckUtils]: 27: Hoare triple {9279#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv1 1))} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {9275#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|))) (_ bv1 1))} is VALID [2022-02-20 23:44:22,029 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9286#(= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1))} {9170#true} #309#return; {9279#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv1 1))} is VALID [2022-02-20 23:44:22,029 INFO L290 TraceCheckUtils]: 25: Hoare triple {9286#(= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1))} assume true; {9286#(= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1))} is VALID [2022-02-20 23:44:22,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {9286#(= (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (_ bv1 1))} is VALID [2022-02-20 23:44:22,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:44:22,035 INFO L290 TraceCheckUtils]: 22: Hoare triple {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:44:22,036 INFO L290 TraceCheckUtils]: 21: Hoare triple {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:44:22,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:44:22,038 INFO L290 TraceCheckUtils]: 19: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9293#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))))} is VALID [2022-02-20 23:44:22,049 WARN L290 TraceCheckUtils]: 18: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,058 WARN L290 TraceCheckUtils]: 17: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,069 WARN L290 TraceCheckUtils]: 16: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,079 WARN L290 TraceCheckUtils]: 15: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,088 WARN L290 TraceCheckUtils]: 14: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,095 WARN L290 TraceCheckUtils]: 13: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,103 WARN L290 TraceCheckUtils]: 12: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is UNKNOWN [2022-02-20 23:44:22,103 INFO L290 TraceCheckUtils]: 11: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,104 INFO L290 TraceCheckUtils]: 10: Hoare triple {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {9340#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#t~mem34#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {9309#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#Ultimate.C_memset_#ptr#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,105 INFO L290 TraceCheckUtils]: 8: Hoare triple {9344#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {9340#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| |DUPFFnew_#t~mem34#1.base| v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,105 INFO L290 TraceCheckUtils]: 7: Hoare triple {9344#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {9344#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,107 INFO L290 TraceCheckUtils]: 6: Hoare triple {9351#(or (and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |DUPFFnew_#t~malloc33#1.base|)) (_ bv1 1))) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| v_arrayElimCell_21))))))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {9344#(forall ((v_ArrVal_552 (Array (_ BitVec 32) (_ BitVec 32)))) (= (select |#valid| (select (select (store |#memory_$Pointer$.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) v_ArrVal_552) |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (_ bv1 1)))} is VALID [2022-02-20 23:44:22,108 INFO L290 TraceCheckUtils]: 5: Hoare triple {9355#(or (not (= (_ bv0 1) (select |#valid| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (bvadd (bvneg (select (store |#valid| |DUPFFnew_~ans~0#1.base| (_ bv1 1)) v_arrayElimCell_21)) (_ bv1 1)) (_ bv0 1))))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {9351#(or (and (= (_ bv0 1) (bvadd (bvneg (select |#valid| |DUPFFnew_#t~malloc33#1.base|)) (_ bv1 1))) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (_ bv0 1) (bvadd (_ bv1 1) (bvneg (select |#valid| v_arrayElimCell_21))))))} is VALID [2022-02-20 23:44:22,109 INFO L290 TraceCheckUtils]: 4: Hoare triple {9355#(or (not (= (_ bv0 1) (select |#valid| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (bvadd (bvneg (select (store |#valid| |DUPFFnew_~ans~0#1.base| (_ bv1 1)) v_arrayElimCell_21)) (_ bv1 1)) (_ bv0 1))))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {9355#(or (not (= (_ bv0 1) (select |#valid| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (bvadd (bvneg (select (store |#valid| |DUPFFnew_~ans~0#1.base| (_ bv1 1)) v_arrayElimCell_21)) (_ bv1 1)) (_ bv0 1))))} is VALID [2022-02-20 23:44:22,110 INFO L290 TraceCheckUtils]: 3: Hoare triple {9170#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {9355#(or (not (= (_ bv0 1) (select |#valid| |DUPFFnew_~ans~0#1.base|))) (forall ((v_arrayElimCell_21 (_ BitVec 32))) (= (bvadd (bvneg (select (store |#valid| |DUPFFnew_~ans~0#1.base| (_ bv1 1)) v_arrayElimCell_21)) (_ bv1 1)) (_ bv0 1))))} is VALID [2022-02-20 23:44:22,110 INFO L272 TraceCheckUtils]: 2: Hoare triple {9170#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {9170#true} is VALID [2022-02-20 23:44:22,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {9170#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {9170#true} is VALID [2022-02-20 23:44:22,110 INFO L290 TraceCheckUtils]: 0: Hoare triple {9170#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {9170#true} is VALID [2022-02-20 23:44:22,110 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 8 not checked. [2022-02-20 23:44:22,110 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:22,110 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1486181662] [2022-02-20 23:44:22,110 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1486181662] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:22,111 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:44:22,111 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11] total 20 [2022-02-20 23:44:22,111 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [966811721] [2022-02-20 23:44:22,111 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:22,111 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 30 [2022-02-20 23:44:22,111 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:22,111 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:22,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:22,179 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-20 23:44:22,179 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:22,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-20 23:44:22,180 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=256, Unknown=4, NotChecked=102, Total=420 [2022-02-20 23:44:22,180 INFO L87 Difference]: Start difference. First operand 220 states and 266 transitions. Second operand has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:26,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,503 INFO L93 Difference]: Finished difference Result 219 states and 265 transitions. [2022-02-20 23:44:26,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:44:26,503 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 30 [2022-02-20 23:44:26,503 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:26,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:26,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 215 transitions. [2022-02-20 23:44:26,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:26,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 215 transitions. [2022-02-20 23:44:26,506 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 215 transitions. [2022-02-20 23:44:26,724 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,726 INFO L225 Difference]: With dead ends: 219 [2022-02-20 23:44:26,726 INFO L226 Difference]: Without dead ends: 219 [2022-02-20 23:44:26,727 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 37 SyntacticMatches, 6 SemanticMatches, 23 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 7.2s TimeCoverageRelationStatistics Valid=89, Invalid=381, Unknown=4, NotChecked=126, Total=600 [2022-02-20 23:44:26,727 INFO L933 BasicCegarLoop]: 193 mSDtfsCounter, 32 mSDsluCounter, 1659 mSDsCounter, 0 mSdLazyCounter, 347 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 1852 SdHoareTripleChecker+Invalid, 761 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 347 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 409 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:26,727 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 1852 Invalid, 761 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 347 Invalid, 0 Unknown, 409 Unchecked, 0.8s Time] [2022-02-20 23:44:26,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-02-20 23:44:26,731 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 219. [2022-02-20 23:44:26,731 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:26,731 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:26,731 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:26,732 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:26,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,735 INFO L93 Difference]: Finished difference Result 219 states and 265 transitions. [2022-02-20 23:44:26,735 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 265 transitions. [2022-02-20 23:44:26,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,736 INFO L74 IsIncluded]: Start isIncluded. First operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 219 states. [2022-02-20 23:44:26,737 INFO L87 Difference]: Start difference. First operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) Second operand 219 states. [2022-02-20 23:44:26,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,740 INFO L93 Difference]: Finished difference Result 219 states and 265 transitions. [2022-02-20 23:44:26,740 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 265 transitions. [2022-02-20 23:44:26,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:26,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:26,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 219 states, 134 states have (on average 1.4179104477611941) internal successors, (190), 176 states have internal predecessors, (190), 35 states have call successors, (35), 10 states have call predecessors, (35), 11 states have return successors, (40), 35 states have call predecessors, (40), 35 states have call successors, (40) [2022-02-20 23:44:26,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 219 states to 219 states and 265 transitions. [2022-02-20 23:44:26,744 INFO L78 Accepts]: Start accepts. Automaton has 219 states and 265 transitions. Word has length 30 [2022-02-20 23:44:26,745 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:26,745 INFO L470 AbstractCegarLoop]: Abstraction has 219 states and 265 transitions. [2022-02-20 23:44:26,745 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 2.1) internal successors, (42), 19 states have internal predecessors, (42), 1 states have call successors, (1), 1 states have call predecessors, (1), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 23:44:26,745 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 265 transitions. [2022-02-20 23:44:26,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:44:26,745 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:26,745 INFO L514 BasicCegarLoop]: trace histogram [8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:26,765 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:44:26,954 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:44:26,955 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [DUPFFnewErr0REQUIRES_VIOLATION, DUPFFnewErr1REQUIRES_VIOLATION, DUPFFnewErr2REQUIRES_VIOLATION, DUPFFnewErr3REQUIRES_VIOLATION (and 51 more)] === [2022-02-20 23:44:26,955 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:26,955 INFO L85 PathProgramCache]: Analyzing trace with hash 924079463, now seen corresponding path program 1 times [2022-02-20 23:44:26,955 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:26,956 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1223871724] [2022-02-20 23:44:26,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:26,956 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:26,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:26,958 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:44:26,958 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:44:27,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:27,182 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 49 conjunts are in the unsatisfiable core [2022-02-20 23:44:27,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:27,205 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:27,218 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:44:27,248 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 10 treesize of output 9 [2022-02-20 23:44:27,266 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:27,267 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:44:27,301 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:44:27,312 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:44:27,492 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:44:27,492 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 22 [2022-02-20 23:44:27,501 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:44:27,522 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,522 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,569 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,569 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,584 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:27,584 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:44:27,612 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,612 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,627 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:27,628 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:44:27,656 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,656 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,671 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:27,671 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:44:27,701 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:44:27,702 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 16 treesize of output 22 [2022-02-20 23:44:27,708 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 3 [2022-02-20 23:44:27,728 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,728 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,775 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,775 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,790 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:27,791 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:44:27,827 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,827 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 41 treesize of output 39 [2022-02-20 23:44:27,842 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:27,843 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:44:27,871 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:44:27,872 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 50 treesize of output 49 [2022-02-20 23:44:27,878 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 24 [2022-02-20 23:44:28,001 INFO L356 Elim1Store]: treesize reduction 296, result has 10.6 percent of original size [2022-02-20 23:44:28,002 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 36 treesize of output 47 [2022-02-20 23:44:28,007 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,008 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,009 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,010 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,010 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,011 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,012 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,013 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,014 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,014 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,015 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 10 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 52 treesize of output 57 [2022-02-20 23:44:28,116 INFO L356 Elim1Store]: treesize reduction 324, result has 10.2 percent of original size [2022-02-20 23:44:28,116 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 38 treesize of output 49 [2022-02-20 23:44:28,124 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,125 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,125 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,126 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,127 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,128 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,128 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,129 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,130 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,131 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:28,132 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 10 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 54 treesize of output 59 [2022-02-20 23:44:28,276 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 13 [2022-02-20 23:44:28,287 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2022-02-20 23:44:28,314 INFO L290 TraceCheckUtils]: 0: Hoare triple {10255#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven;call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32); {10255#true} is VALID [2022-02-20 23:44:28,315 INFO L290 TraceCheckUtils]: 1: Hoare triple {10255#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset, main_#t~mem66#1.base, main_#t~mem66#1.offset, main_#t~ret67#1.base, main_#t~ret67#1.offset, main_#t~mem68#1.base, main_#t~mem68#1.offset, main_#t~ret69#1.base, main_#t~ret69#1.offset, main_~f~0#1.base, main_~f~0#1.offset, main_~g~0#1.base, main_~g~0#1.offset, main_~#cf~0#1.base, main_~#cf~0#1.offset, main_~#cg~0#1.base, main_~#cg~0#1.offset, main_~h~0#1.base, main_~h~0#1.offset;havoc main_~f~0#1.base, main_~f~0#1.offset;havoc main_~g~0#1.base, main_~g~0#1.offset;call main_~#cf~0#1.base, main_~#cf~0#1.offset := #Ultimate.allocOnStack(4bv32);call main_~#cg~0#1.base, main_~#cg~0#1.offset := #Ultimate.allocOnStack(4bv32);havoc main_~h~0#1.base, main_~h~0#1.offset; {10255#true} is VALID [2022-02-20 23:44:28,315 INFO L272 TraceCheckUtils]: 2: Hoare triple {10255#true} call main_#t~ret65#1.base, main_#t~ret65#1.offset := DUPFFnew(1bv32); {10255#true} is VALID [2022-02-20 23:44:28,316 INFO L290 TraceCheckUtils]: 3: Hoare triple {10255#true} ~maxdeg#1 := #in~maxdeg#1;call #t~malloc32#1.base, #t~malloc32#1.offset := #Ultimate.allocOnHeap(12bv32);~ans~0#1.base, ~ans~0#1.offset := #t~malloc32#1.base, #t~malloc32#1.offset;havoc #t~malloc32#1.base, #t~malloc32#1.offset; {10269#(and (= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:28,316 INFO L290 TraceCheckUtils]: 4: Hoare triple {10269#(and (= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L895 {10269#(and (= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:28,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {10269#(and (= |DUPFFnew_#in~maxdeg#1| |DUPFFnew_~maxdeg#1|) (= (select |#valid| |DUPFFnew_~ans~0#1.base|) (_ bv1 1)))} assume ~bvsge32(~maxdeg#1, 0bv32);call #t~malloc33#1.base, #t~malloc33#1.offset := #Ultimate.allocOnHeap(~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1))); {10276#(and (= (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)) (select |#length| |DUPFFnew_#t~malloc33#1.base|)) (= |DUPFFnew_#t~malloc33#1.offset| (_ bv0 32)) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|)))} is VALID [2022-02-20 23:44:28,328 INFO L290 TraceCheckUtils]: 6: Hoare triple {10276#(and (= (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|)) (select |#length| |DUPFFnew_#t~malloc33#1.base|)) (= |DUPFFnew_#t~malloc33#1.offset| (_ bv0 32)) (not (= |DUPFFnew_#t~malloc33#1.base| |DUPFFnew_~ans~0#1.base|)))} SUMMARY for call write~$Pointer$(#t~malloc33#1.base, #t~malloc33#1.offset, ~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L897 {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,329 INFO L290 TraceCheckUtils]: 7: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} havoc #t~malloc33#1.base, #t~malloc33#1.offset; {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,329 INFO L290 TraceCheckUtils]: 8: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} SUMMARY for call #t~mem34#1.base, #t~mem34#1.offset := read~$Pointer$(~ans~0#1.base, ~bvadd32(8bv32, ~ans~0#1.offset), 4bv32); srcloc: L898 {10287#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#t~mem34#1.base|) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,330 INFO L290 TraceCheckUtils]: 9: Hoare triple {10287#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#t~mem34#1.base|) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := #t~mem34#1.base, #t~mem34#1.offset, 0bv32, ~bvmul32(4bv32, ~bvadd32(1bv32, ~maxdeg#1)); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,330 INFO L290 TraceCheckUtils]: 10: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base]; {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,331 INFO L290 TraceCheckUtils]: 11: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);assume 1bv1 == #valid[#Ultimate.C_memset_#ptr#1.base];assume (~bvule32(~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset), #length[#Ultimate.C_memset_#ptr#1.base]) && ~bvule32(#Ultimate.C_memset_#ptr#1.offset, ~bvadd32(#Ultimate.C_memset_#amount#1, #Ultimate.C_memset_#ptr#1.offset))) && ~bvule32(0bv32, #Ultimate.C_memset_#ptr#1.offset);havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr71#1;#Ultimate.C_memset_#t~loopctr71#1 := 0bv32; {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,335 INFO L290 TraceCheckUtils]: 13: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,340 INFO L290 TraceCheckUtils]: 15: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,346 INFO L290 TraceCheckUtils]: 18: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {10291#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (= (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) |DUPFFnew_#Ultimate.C_memset_#ptr#1.base|) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume ~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1);#memory_int := #memory_int[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := #Ultimate.C_memset_#value#1[8:0]];#memory_$Pointer$.base, #memory_$Pointer$.offset := #memory_$Pointer$.base[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := 0bv32], #memory_$Pointer$.offset[#Ultimate.C_memset_#ptr#1.base,~bvadd32(#Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#t~loopctr71#1) := ~zero_extendFrom8To32(#Ultimate.C_memset_#value#1[8:0])];#Ultimate.C_memset_#t~loopctr71#1 := ~bvadd32(1bv32, #Ultimate.C_memset_#t~loopctr71#1); {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume !~bvult32(#Ultimate.C_memset_#t~loopctr71#1, #Ultimate.C_memset_#amount#1); {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,349 INFO L290 TraceCheckUtils]: 21: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res35#1.base, #t~memset~res35#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;havoc #t~mem34#1.base, #t~mem34#1.offset;havoc #t~memset~res35#1.base, #t~memset~res35#1.offset; {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,354 INFO L290 TraceCheckUtils]: 22: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~maxdeg#1, ~ans~0#1.base, ~ans~0#1.offset, 4bv32); srcloc: L896-1 {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:28,358 INFO L290 TraceCheckUtils]: 23: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(4294967295bv32, ~ans~0#1.base, ~bvadd32(4bv32, ~ans~0#1.offset), 4bv32); srcloc: L900 {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:30,361 WARN L290 TraceCheckUtils]: 24: Hoare triple {10280#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= |DUPFFnew_~ans~0#1.base| (select (select |#memory_$Pointer$.base| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_~ans~0#1.base|) (bvadd (_ bv8 32) |DUPFFnew_~ans~0#1.offset|)) (_ bv0 32)))} #res#1.base, #res#1.offset := ~ans~0#1.base, ~ans~0#1.offset; {10337#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) (_ bv0 32)))} is UNKNOWN [2022-02-20 23:44:30,362 INFO L290 TraceCheckUtils]: 25: Hoare triple {10337#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) (_ bv0 32)))} assume true; {10337#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:30,363 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10337#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|))) (bvadd (_ bv4 32) (bvmul (_ bv4 32) |DUPFFnew_#in~maxdeg#1|))) (not (= (select (select |#memory_$Pointer$.base| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) |DUPFFnew_#res#1.base|)) (= (select (select |#memory_$Pointer$.offset| |DUPFFnew_#res#1.base|) (bvadd (_ bv8 32) |DUPFFnew_#res#1.offset|)) (_ bv0 32)))} {10255#true} #309#return; {10344#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv8 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)) (_ bv0 32)) (not (= |ULTIMATE.start_main_#t~ret65#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)))))} is VALID [2022-02-20 23:44:30,363 INFO L290 TraceCheckUtils]: 27: Hoare triple {10344#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|))) (_ bv8 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)) (_ bv0 32)) (not (= |ULTIMATE.start_main_#t~ret65#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_#t~ret65#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_#t~ret65#1.offset|)))))} main_~f~0#1.base, main_~f~0#1.offset := main_#t~ret65#1.base, main_#t~ret65#1.offset;havoc main_#t~ret65#1.base, main_#t~ret65#1.offset; {10348#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) |ULTIMATE.start_main_~f~0#1.base|)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) (_ bv0 32)))} is VALID [2022-02-20 23:44:30,364 INFO L290 TraceCheckUtils]: 28: Hoare triple {10348#(and (not (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) |ULTIMATE.start_main_~f~0#1.base|)) (= (_ bv8 32) (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~f~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~f~0#1.offset|)) (_ bv0 32)))} SUMMARY for call main_#t~mem66#1.base, main_#t~mem66#1.offset := read~$Pointer$(main_~f~0#1.base, ~bvadd32(8bv32, main_~f~0#1.offset), 4bv32); srcloc: L967-2 {10352#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem66#1.base|)) (= |ULTIMATE.start_main_#t~mem66#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:30,364 INFO L290 TraceCheckUtils]: 29: Hoare triple {10352#(and (= (_ bv8 32) (select |#length| |ULTIMATE.start_main_#t~mem66#1.base|)) (= |ULTIMATE.start_main_#t~mem66#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem66#1.offset)), #length[main_#t~mem66#1.base]) && ~bvule32(~bvadd32(4bv32, main_#t~mem66#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem66#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, main_#t~mem66#1.offset))); {10256#false} is VALID [2022-02-20 23:44:30,365 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:44:30,365 INFO L328 TraceCheckSpWp]: Computing backward predicates...