./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/test-0102-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/test-0102-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 fa260939b291574cde59d3c10d7828de68c26744f55119227115b01940792a6f --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:33,430 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:33,431 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:33,453 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:33,453 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:33,454 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:33,455 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:33,456 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:33,457 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:33,461 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:33,462 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:33,463 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:33,463 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:33,464 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:33,464 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:33,465 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:33,466 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:33,466 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:33,467 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:33,468 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:33,469 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:33,470 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:33,471 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:33,471 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:33,475 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:33,476 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:33,476 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:33,476 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:33,477 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:33,477 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:33,478 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:33,478 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:33,479 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:33,479 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:33,480 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:33,480 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:33,480 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:33,481 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:33,481 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:33,481 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:33,482 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:33,482 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:44:33,495 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:33,496 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:33,496 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:33,496 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:33,497 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:33,497 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:33,497 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:33,498 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:33,498 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:33,498 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:33,498 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:33,498 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:33,498 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:33,499 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:33,500 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:33,500 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:33,500 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:33,500 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:33,500 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:33,500 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:33,501 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:33,501 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:33,501 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:33,501 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:44:33,501 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:44:33,501 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 -> fa260939b291574cde59d3c10d7828de68c26744f55119227115b01940792a6f [2022-02-20 23:44:33,639 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:33,669 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:33,671 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:33,672 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:33,674 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:33,675 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0102-1.i [2022-02-20 23:44:33,727 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/59ba3f436/dc9371e157be4b2ea3dda9a2620e7d26/FLAGccc58cdd9 [2022-02-20 23:44:34,128 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:34,129 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0102-1.i [2022-02-20 23:44:34,136 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/59ba3f436/dc9371e157be4b2ea3dda9a2620e7d26/FLAGccc58cdd9 [2022-02-20 23:44:34,145 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/59ba3f436/dc9371e157be4b2ea3dda9a2620e7d26 [2022-02-20 23:44:34,147 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:34,148 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:34,148 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:34,148 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:34,152 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:34,156 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:34" (1/1) ... [2022-02-20 23:44:34,157 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@45c8034a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:34, skipping insertion in model container [2022-02-20 23:44:34,157 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:34" (1/1) ... [2022-02-20 23:44:34,163 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:34,194 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:34,355 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:34,361 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:44:34,362 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@26b50fcf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:34, skipping insertion in model container [2022-02-20 23:44:34,362 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:34,362 INFO L184 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2022-02-20 23:44:34,364 INFO L158 Benchmark]: Toolchain (without parser) took 215.62ms. Allocated memory is still 92.3MB. Free memory was 67.0MB in the beginning and 54.6MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 23:44:34,364 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 75.5MB. Free memory was 45.7MB in the beginning and 45.7MB in the end (delta: 40.1kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:44:34,365 INFO L158 Benchmark]: CACSL2BoogieTranslator took 213.81ms. Allocated memory is still 92.3MB. Free memory was 66.9MB in the beginning and 54.7MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 23:44:34,366 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.18ms. Allocated memory is still 75.5MB. Free memory was 45.7MB in the beginning and 45.7MB in the end (delta: 40.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 213.81ms. Allocated memory is still 92.3MB. Free memory was 66.9MB in the beginning and 54.7MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - UnsupportedSyntaxResult [Line: 551]: 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/test-0102-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 fa260939b291574cde59d3c10d7828de68c26744f55119227115b01940792a6f --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:35,799 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:35,801 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:35,831 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:35,831 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:35,834 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:35,835 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:35,839 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:35,841 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:35,844 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:35,845 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:35,846 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:35,846 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:35,854 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:35,856 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:35,867 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:35,868 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:35,869 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:35,870 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:35,875 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:35,876 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:35,877 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:35,878 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:35,879 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:35,884 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:35,884 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:35,884 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:35,886 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:35,886 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:35,887 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:35,887 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:35,888 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:35,889 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:35,890 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:35,891 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:35,891 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:35,891 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:35,892 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:35,892 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:35,893 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:35,893 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:35,895 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:44:35,923 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:35,923 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:35,924 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:35,924 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:35,925 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:35,925 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:35,926 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:35,926 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:35,926 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:35,926 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:35,927 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:35,927 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:35,927 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:35,927 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:35,928 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:35,929 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:35,929 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:35,930 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:35,930 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:35,930 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:44:35,930 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:44:35,930 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:44:35,931 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 -> fa260939b291574cde59d3c10d7828de68c26744f55119227115b01940792a6f [2022-02-20 23:44:36,198 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:36,214 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:36,216 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:36,218 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:36,218 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:36,219 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/test-0102-1.i [2022-02-20 23:44:36,272 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43244c200/7c926ccda32844d3890d5c3b799cc027/FLAG814e45b6b [2022-02-20 23:44:36,656 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:36,657 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/test-0102-1.i [2022-02-20 23:44:36,665 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43244c200/7c926ccda32844d3890d5c3b799cc027/FLAG814e45b6b [2022-02-20 23:44:37,018 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/43244c200/7c926ccda32844d3890d5c3b799cc027 [2022-02-20 23:44:37,019 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:37,020 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:37,021 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:37,021 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:37,037 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:37,038 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,039 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7cd6882e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37, skipping insertion in model container [2022-02-20 23:44:37,039 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,044 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:37,086 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:37,402 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:37,415 INFO L200 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2022-02-20 23:44:37,426 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:37,461 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:37,478 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:44:37,528 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:37,558 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:44:37,559 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37 WrapperNode [2022-02-20 23:44:37,559 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:37,560 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:37,561 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:44:37,561 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:44:37,565 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:44:37" (1/1) ... [2022-02-20 23:44:37,593 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:44:37" (1/1) ... [2022-02-20 23:44:37,620 INFO L137 Inliner]: procedures = 136, calls = 38, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 86 [2022-02-20 23:44:37,621 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:37,622 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:44:37,622 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:44:37,622 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:44:37,627 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,627 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,634 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,638 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,659 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,666 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,668 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,673 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:44:37,676 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:44:37,677 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:44:37,677 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:44:37,678 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (1/1) ... [2022-02-20 23:44:37,683 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:37,690 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:37,701 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:44:37,718 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:44:37,729 INFO L130 BoogieDeclarations]: Found specification of procedure list_add_tail [2022-02-20 23:44:37,730 INFO L138 BoogieDeclarations]: Found implementation of procedure list_add_tail [2022-02-20 23:44:37,730 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:44:37,730 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:44:37,730 INFO L130 BoogieDeclarations]: Found specification of procedure create_sub_list [2022-02-20 23:44:37,730 INFO L138 BoogieDeclarations]: Found implementation of procedure create_sub_list [2022-02-20 23:44:37,730 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure destroy_sub [2022-02-20 23:44:37,731 INFO L138 BoogieDeclarations]: Found implementation of procedure destroy_sub [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 23:44:37,731 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:44:37,732 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:44:37,732 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:44:37,868 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:44:37,869 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:44:38,178 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:44:38,183 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:44:38,183 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:44:38,184 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:38 BoogieIcfgContainer [2022-02-20 23:44:38,184 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:44:38,185 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:44:38,185 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:44:38,187 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:44:38,187 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:44:37" (1/3) ... [2022-02-20 23:44:38,188 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f4f4606 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:38, skipping insertion in model container [2022-02-20 23:44:38,188 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:37" (2/3) ... [2022-02-20 23:44:38,188 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6f4f4606 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:38, skipping insertion in model container [2022-02-20 23:44:38,188 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:38" (3/3) ... [2022-02-20 23:44:38,189 INFO L111 eAbstractionObserver]: Analyzing ICFG test-0102-1.i [2022-02-20 23:44:38,192 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:44:38,193 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 31 error locations. [2022-02-20 23:44:38,228 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:44:38,232 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:44:38,233 INFO L340 AbstractCegarLoop]: Starting to check reachability of 31 error locations. [2022-02-20 23:44:38,247 INFO L276 IsEmpty]: Start isEmpty. Operand has 87 states, 46 states have (on average 1.891304347826087) internal successors, (87), 77 states have internal predecessors, (87), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:38,251 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:38,252 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:38,252 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:38,253 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:38,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:38,257 INFO L85 PathProgramCache]: Analyzing trace with hash 106012329, now seen corresponding path program 1 times [2022-02-20 23:44:38,265 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:38,265 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1612633450] [2022-02-20 23:44:38,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:38,266 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:38,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:38,268 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:44:38,269 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:44:38,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:38,326 INFO L263 TraceCheckSpWp]: Trace formula consists of 36 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 23:44:38,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:38,347 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:38,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {90#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(14bv32, 2bv32); {90#true} is VALID [2022-02-20 23:44:38,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {90#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {90#true} is VALID [2022-02-20 23:44:38,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {90#true} assume !true; {91#false} is VALID [2022-02-20 23:44:38,376 INFO L290 TraceCheckUtils]: 3: Hoare triple {91#false} assume { :end_inline_create_top } true;assume { :begin_inline_destroy_top } true;destroy_top_#in~head#1.base, destroy_top_#in~head#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc destroy_top_#t~mem6#1.base, destroy_top_#t~mem6#1.offset, destroy_top_#t~mem7#1.base, destroy_top_#t~mem7#1.offset, destroy_top_~next~1#1.base, destroy_top_~next~1#1.offset, destroy_top_~head#1.base, destroy_top_~head#1.offset, destroy_top_~now~1#1.base, destroy_top_~now~1#1.offset;destroy_top_~head#1.base, destroy_top_~head#1.offset := destroy_top_#in~head#1.base, destroy_top_#in~head#1.offset; {91#false} is VALID [2022-02-20 23:44:38,376 INFO L290 TraceCheckUtils]: 4: Hoare triple {91#false} assume !(1bv1 == #valid[destroy_top_~head#1.base]); {91#false} is VALID [2022-02-20 23:44:38,377 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:44:38,377 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:38,378 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:38,378 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1612633450] [2022-02-20 23:44:38,378 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1612633450] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:38,379 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:38,379 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:38,380 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372634160] [2022-02-20 23:44:38,380 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:38,384 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:38,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:38,386 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,393 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:44:38,393 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:44:38,393 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:38,406 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:44:38,407 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:38,409 INFO L87 Difference]: Start difference. First operand has 87 states, 46 states have (on average 1.891304347826087) internal successors, (87), 77 states have internal predecessors, (87), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,534 INFO L93 Difference]: Finished difference Result 87 states and 93 transitions. [2022-02-20 23:44:38,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:44:38,535 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:38,535 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:38,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 99 transitions. [2022-02-20 23:44:38,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 99 transitions. [2022-02-20 23:44:38,544 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 99 transitions. [2022-02-20 23:44:38,656 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:38,663 INFO L225 Difference]: With dead ends: 87 [2022-02-20 23:44:38,663 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 23:44:38,665 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:38,667 INFO L933 BasicCegarLoop]: 93 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 93 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:38,668 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:38,678 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 23:44:38,687 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2022-02-20 23:44:38,688 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:38,689 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:38,689 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:38,690 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:38,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,695 INFO L93 Difference]: Finished difference Result 85 states and 91 transitions. [2022-02-20 23:44:38,695 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:38,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:38,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:38,697 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 85 states. [2022-02-20 23:44:38,697 INFO L87 Difference]: Start difference. First operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 85 states. [2022-02-20 23:44:38,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,701 INFO L93 Difference]: Finished difference Result 85 states and 91 transitions. [2022-02-20 23:44:38,701 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:38,702 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:38,702 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:38,702 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:38,702 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:38,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 45 states have (on average 1.7555555555555555) internal successors, (79), 75 states have internal predecessors, (79), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:38,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 91 transitions. [2022-02-20 23:44:38,707 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 91 transitions. Word has length 5 [2022-02-20 23:44:38,707 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:38,707 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 91 transitions. [2022-02-20 23:44:38,707 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,708 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:38,708 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:38,708 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:38,708 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:38,720 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:44:38,919 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:44:38,919 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting create_sub_listErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:38,922 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:38,923 INFO L85 PathProgramCache]: Analyzing trace with hash -1219357814, now seen corresponding path program 1 times [2022-02-20 23:44:38,923 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:38,923 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [361651412] [2022-02-20 23:44:38,923 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:38,924 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:38,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:38,925 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:44:38,926 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:44:38,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:38,970 INFO L263 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:38,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:38,980 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:39,018 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:39,056 INFO L290 TraceCheckUtils]: 0: Hoare triple {448#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(14bv32, 2bv32); {448#true} is VALID [2022-02-20 23:44:39,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {448#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {448#true} is VALID [2022-02-20 23:44:39,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {448#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {459#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:39,058 INFO L290 TraceCheckUtils]: 3: Hoare triple {459#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {459#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:39,059 INFO L272 TraceCheckUtils]: 4: Hoare triple {459#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {466#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:39,060 INFO L290 TraceCheckUtils]: 5: Hoare triple {466#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {470#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:39,060 INFO L290 TraceCheckUtils]: 6: Hoare triple {470#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[~sub#1.base]); {449#false} is VALID [2022-02-20 23:44:39,060 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:44:39,061 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:39,061 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:39,062 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [361651412] [2022-02-20 23:44:39,062 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [361651412] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:39,062 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:39,062 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:44:39,065 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2084813088] [2022-02-20 23:44:39,065 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:39,066 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) 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:44:39,066 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:39,067 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.5) 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:44:39,076 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:44:39,077 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:44:39,078 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:39,078 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:44:39,079 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:39,079 INFO L87 Difference]: Start difference. First operand 85 states and 91 transitions. Second operand has 5 states, 4 states have (on average 1.5) 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:44:39,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:39,743 INFO L93 Difference]: Finished difference Result 91 states and 99 transitions. [2022-02-20 23:44:39,743 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:39,743 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) 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:44:39,743 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:39,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) 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:44:39,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 101 transitions. [2022-02-20 23:44:39,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) 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:44:39,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 101 transitions. [2022-02-20 23:44:39,748 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 101 transitions. [2022-02-20 23:44:39,853 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:39,855 INFO L225 Difference]: With dead ends: 91 [2022-02-20 23:44:39,855 INFO L226 Difference]: Without dead ends: 91 [2022-02-20 23:44:39,855 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:39,856 INFO L933 BasicCegarLoop]: 74 mSDtfsCounter, 39 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 190 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 128 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:39,856 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 190 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 128 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:39,857 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-02-20 23:44:39,860 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-02-20 23:44:39,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:39,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:39,861 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:39,862 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:39,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:39,865 INFO L93 Difference]: Finished difference Result 91 states and 99 transitions. [2022-02-20 23:44:39,866 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 99 transitions. [2022-02-20 23:44:39,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:39,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:39,867 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 91 states. [2022-02-20 23:44:39,867 INFO L87 Difference]: Start difference. First operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 91 states. [2022-02-20 23:44:39,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:39,871 INFO L93 Difference]: Finished difference Result 91 states and 99 transitions. [2022-02-20 23:44:39,871 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 99 transitions. [2022-02-20 23:44:39,872 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:39,872 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:39,872 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:39,873 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:39,873 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 45 states have (on average 1.711111111111111) internal successors, (77), 73 states have internal predecessors, (77), 6 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:39,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 89 transitions. [2022-02-20 23:44:39,876 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 89 transitions. Word has length 7 [2022-02-20 23:44:39,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:39,876 INFO L470 AbstractCegarLoop]: Abstraction has 83 states and 89 transitions. [2022-02-20 23:44:39,876 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.5) 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:44:39,876 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 89 transitions. [2022-02-20 23:44:39,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:39,877 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:39,877 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:39,887 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:44:40,085 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:44:40,086 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting create_sub_listErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:40,086 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:40,086 INFO L85 PathProgramCache]: Analyzing trace with hash -1219357813, now seen corresponding path program 1 times [2022-02-20 23:44:40,087 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:40,087 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [896222285] [2022-02-20 23:44:40,087 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:40,087 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:40,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:40,088 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:44:40,090 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:44:40,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:40,133 INFO L263 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:44:40,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:40,146 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:40,168 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:40,248 INFO L290 TraceCheckUtils]: 0: Hoare triple {831#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(14bv32, 2bv32); {831#true} is VALID [2022-02-20 23:44:40,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {831#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {831#true} is VALID [2022-02-20 23:44:40,249 INFO L290 TraceCheckUtils]: 2: Hoare triple {831#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {842#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:40,250 INFO L290 TraceCheckUtils]: 3: Hoare triple {842#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {842#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:40,251 INFO L272 TraceCheckUtils]: 4: Hoare triple {842#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {849#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} is VALID [2022-02-20 23:44:40,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {849#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {853#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:44:40,252 INFO L290 TraceCheckUtils]: 6: Hoare triple {853#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {832#false} is VALID [2022-02-20 23:44:40,252 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:44:40,252 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:40,252 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:40,253 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [896222285] [2022-02-20 23:44:40,253 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [896222285] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:40,253 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:40,253 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:44:40,253 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [182227362] [2022-02-20 23:44:40,253 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:40,254 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) 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:44:40,254 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:40,254 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.5) 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:44:40,262 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:44:40,263 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:44:40,263 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:40,264 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:44:40,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:40,264 INFO L87 Difference]: Start difference. First operand 83 states and 89 transitions. Second operand has 5 states, 4 states have (on average 1.5) 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:44:40,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:40,952 INFO L93 Difference]: Finished difference Result 87 states and 93 transitions. [2022-02-20 23:44:40,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:40,952 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) 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:44:40,953 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:40,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) 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:44:40,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 95 transitions. [2022-02-20 23:44:40,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) 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:44:40,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 95 transitions. [2022-02-20 23:44:40,956 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 95 transitions. [2022-02-20 23:44:41,055 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:41,057 INFO L225 Difference]: With dead ends: 87 [2022-02-20 23:44:41,057 INFO L226 Difference]: Without dead ends: 87 [2022-02-20 23:44:41,057 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:41,058 INFO L933 BasicCegarLoop]: 84 mSDtfsCounter, 5 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 97 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 256 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 97 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:41,058 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 256 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 97 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:41,059 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2022-02-20 23:44:41,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 86. [2022-02-20 23:44:41,062 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:41,062 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,062 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,063 INFO L87 Difference]: Start difference. First operand 87 states. Second operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,065 INFO L93 Difference]: Finished difference Result 87 states and 93 transitions. [2022-02-20 23:44:41,066 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 93 transitions. [2022-02-20 23:44:41,066 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,066 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,067 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 87 states. [2022-02-20 23:44:41,067 INFO L87 Difference]: Start difference. First operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 87 states. [2022-02-20 23:44:41,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,069 INFO L93 Difference]: Finished difference Result 87 states and 93 transitions. [2022-02-20 23:44:41,070 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 93 transitions. [2022-02-20 23:44:41,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:41,071 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:41,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 48 states have (on average 1.6666666666666667) internal successors, (80), 75 states have internal predecessors, (80), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 92 transitions. [2022-02-20 23:44:41,073 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 92 transitions. Word has length 7 [2022-02-20 23:44:41,073 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:41,073 INFO L470 AbstractCegarLoop]: Abstraction has 86 states and 92 transitions. [2022-02-20 23:44:41,074 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.5) 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:44:41,074 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:44:41,074 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:41,074 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:41,074 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:41,083 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:44:41,282 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:44:41,283 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting create_sub_listErr4REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:41,283 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:41,283 INFO L85 PathProgramCache]: Analyzing trace with hash -778231822, now seen corresponding path program 1 times [2022-02-20 23:44:41,283 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:41,284 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1516366514] [2022-02-20 23:44:41,284 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:41,284 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:41,284 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:41,285 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:44:41,285 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:44:41,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,340 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:44:41,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,348 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:41,366 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:41,373 INFO L290 TraceCheckUtils]: 0: Hoare triple {1205#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(14bv32, 2bv32); {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {1205#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {1205#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L290 TraceCheckUtils]: 3: Hoare triple {1205#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {1205#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {1205#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1205#true} is VALID [2022-02-20 23:44:41,373 INFO L290 TraceCheckUtils]: 6: Hoare triple {1205#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {1205#true} is VALID [2022-02-20 23:44:41,374 INFO L290 TraceCheckUtils]: 7: Hoare triple {1205#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {1205#true} is VALID [2022-02-20 23:44:41,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {1205#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1234#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:41,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {1234#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1234#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:41,382 INFO L290 TraceCheckUtils]: 10: Hoare triple {1234#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[insert_sub_~sub~0#1.base]); {1206#false} is VALID [2022-02-20 23:44:41,382 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:44:41,382 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:41,382 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:41,383 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1516366514] [2022-02-20 23:44:41,383 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1516366514] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:41,383 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:41,383 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:41,383 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [276513178] [2022-02-20 23:44:41,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:41,383 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,383 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:41,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,397 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:44:41,397 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:41,397 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:41,397 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:41,397 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:41,398 INFO L87 Difference]: Start difference. First operand 86 states and 92 transitions. Second operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,600 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:44:41,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:41,601 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:41,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-02-20 23:44:41,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 90 transitions. [2022-02-20 23:44:41,604 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 90 transitions. [2022-02-20 23:44:41,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:41,681 INFO L225 Difference]: With dead ends: 86 [2022-02-20 23:44:41,681 INFO L226 Difference]: Without dead ends: 86 [2022-02-20 23:44:41,681 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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:44:41,682 INFO L933 BasicCegarLoop]: 85 mSDtfsCounter, 6 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:41,682 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 132 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:41,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-02-20 23:44:41,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 85. [2022-02-20 23:44:41,685 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:41,686 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,686 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,686 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,689 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:44:41,689 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:44:41,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,690 INFO L74 IsIncluded]: Start isIncluded. First operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 86 states. [2022-02-20 23:44:41,690 INFO L87 Difference]: Start difference. First operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 86 states. [2022-02-20 23:44:41,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,692 INFO L93 Difference]: Finished difference Result 86 states and 92 transitions. [2022-02-20 23:44:41,692 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 92 transitions. [2022-02-20 23:44:41,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:41,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:41,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:41,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:41,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 85 states, 48 states have (on average 1.6458333333333333) internal successors, (79), 74 states have internal predecessors, (79), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:41,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 91 transitions. [2022-02-20 23:44:41,695 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 91 transitions. Word has length 11 [2022-02-20 23:44:41,696 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:41,696 INFO L470 AbstractCegarLoop]: Abstraction has 85 states and 91 transitions. [2022-02-20 23:44:41,696 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:41,696 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:41,696 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:44:41,696 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:41,697 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:41,706 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:44:41,905 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:44:41,905 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting create_sub_listErr5REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:41,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:41,905 INFO L85 PathProgramCache]: Analyzing trace with hash -778231821, now seen corresponding path program 1 times [2022-02-20 23:44:41,906 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:41,906 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1611073559] [2022-02-20 23:44:41,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:41,906 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:41,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:41,907 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:44:41,907 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:44:41,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,956 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:41,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:41,961 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:41,990 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:42,005 INFO L290 TraceCheckUtils]: 0: Hoare triple {1583#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(14bv32, 2bv32); {1583#true} is VALID [2022-02-20 23:44:42,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {1583#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1583#true} is VALID [2022-02-20 23:44:42,006 INFO L290 TraceCheckUtils]: 2: Hoare triple {1583#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1583#true} is VALID [2022-02-20 23:44:42,006 INFO L290 TraceCheckUtils]: 3: Hoare triple {1583#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1583#true} is VALID [2022-02-20 23:44:42,006 INFO L272 TraceCheckUtils]: 4: Hoare triple {1583#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1583#true} is VALID [2022-02-20 23:44:42,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {1583#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1583#true} is VALID [2022-02-20 23:44:42,007 INFO L290 TraceCheckUtils]: 6: Hoare triple {1583#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {1583#true} is VALID [2022-02-20 23:44:42,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {1583#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {1583#true} is VALID [2022-02-20 23:44:42,008 INFO L290 TraceCheckUtils]: 8: Hoare triple {1583#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1612#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:42,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {1612#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1612#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:42,009 INFO L290 TraceCheckUtils]: 10: Hoare triple {1612#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, insert_sub_~sub~0#1.offset), #length[insert_sub_~sub~0#1.base]) && ~bvule32(insert_sub_~sub~0#1.offset, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset))) && ~bvule32(0bv32, insert_sub_~sub~0#1.offset)); {1584#false} is VALID [2022-02-20 23:44:42,009 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:44:42,009 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:42,010 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:42,010 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1611073559] [2022-02-20 23:44:42,010 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1611073559] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:42,010 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:42,010 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:42,010 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [119030652] [2022-02-20 23:44:42,010 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:42,011 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:42,012 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,021 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:44:42,022 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:42,022 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:42,023 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:42,023 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:42,023 INFO L87 Difference]: Start difference. First operand 85 states and 91 transitions. Second operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,258 INFO L93 Difference]: Finished difference Result 85 states and 91 transitions. [2022-02-20 23:44:42,258 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:42,258 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,258 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:42,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-02-20 23:44:42,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 89 transitions. [2022-02-20 23:44:42,261 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 89 transitions. [2022-02-20 23:44:42,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:42,337 INFO L225 Difference]: With dead ends: 85 [2022-02-20 23:44:42,337 INFO L226 Difference]: Without dead ends: 85 [2022-02-20 23:44:42,338 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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:44:42,338 INFO L933 BasicCegarLoop]: 85 mSDtfsCounter, 5 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:42,338 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 136 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:42,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-02-20 23:44:42,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 84. [2022-02-20 23:44:42,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:42,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:42,341 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:42,341 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:42,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,343 INFO L93 Difference]: Finished difference Result 85 states and 91 transitions. [2022-02-20 23:44:42,343 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:42,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,344 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 85 states. [2022-02-20 23:44:42,344 INFO L87 Difference]: Start difference. First operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 85 states. [2022-02-20 23:44:42,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,346 INFO L93 Difference]: Finished difference Result 85 states and 91 transitions. [2022-02-20 23:44:42,346 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 91 transitions. [2022-02-20 23:44:42,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:42,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:42,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 48 states have (on average 1.625) internal successors, (78), 73 states have internal predecessors, (78), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 23:44:42,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 90 transitions. [2022-02-20 23:44:42,348 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 90 transitions. Word has length 11 [2022-02-20 23:44:42,348 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:42,348 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 90 transitions. [2022-02-20 23:44:42,348 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 5.0) internal successors, (10), 3 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:44:42,348 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 90 transitions. [2022-02-20 23:44:42,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:44:42,349 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:42,349 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:42,355 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:44:42,555 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:44:42,556 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting list_add_tailErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:42,556 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:42,556 INFO L85 PathProgramCache]: Analyzing trace with hash -70636768, now seen corresponding path program 1 times [2022-02-20 23:44:42,556 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:42,556 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1110035638] [2022-02-20 23:44:42,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:42,557 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:42,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:42,558 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:44:42,558 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:44:42,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:42,643 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:44:42,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:42,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:42,671 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:42,675 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:42,814 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:42,815 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:44:42,827 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:42,828 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:44:42,908 INFO L290 TraceCheckUtils]: 0: Hoare triple {1957#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(14bv32, 2bv32); {1957#true} is VALID [2022-02-20 23:44:42,909 INFO L290 TraceCheckUtils]: 1: Hoare triple {1957#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {1957#true} is VALID [2022-02-20 23:44:42,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {1957#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {1968#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:42,912 INFO L290 TraceCheckUtils]: 3: Hoare triple {1968#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {1968#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:42,913 INFO L272 TraceCheckUtils]: 4: Hoare triple {1968#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {1975#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} is VALID [2022-02-20 23:44:42,914 INFO L290 TraceCheckUtils]: 5: Hoare triple {1975#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= |create_sub_list_#in~sub#1.offset| (_ bv8 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:42,915 INFO L290 TraceCheckUtils]: 6: Hoare triple {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:42,915 INFO L290 TraceCheckUtils]: 7: Hoare triple {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:42,916 INFO L290 TraceCheckUtils]: 8: Hoare triple {1979#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv8 32) |create_sub_list_~sub#1.offset|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:42,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:42,920 INFO L290 TraceCheckUtils]: 10: Hoare triple {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:42,922 INFO L272 TraceCheckUtils]: 11: Hoare triple {1989#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {1999#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|))} is VALID [2022-02-20 23:44:42,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {1999#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {2003#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:44:42,923 INFO L290 TraceCheckUtils]: 13: Hoare triple {2003#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {1958#false} is VALID [2022-02-20 23:44:42,923 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:44:42,923 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:42,923 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:42,923 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1110035638] [2022-02-20 23:44:42,923 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1110035638] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:42,923 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:42,924 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:42,924 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1259633339] [2022-02-20 23:44:42,924 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:42,924 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:42,924 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:42,925 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,941 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:42,942 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:44:42,942 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:42,942 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:44:42,942 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:42,942 INFO L87 Difference]: Start difference. First operand 84 states and 90 transitions. Second operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,251 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:44,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:44:44,252 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:44,252 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:44,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 119 transitions. [2022-02-20 23:44:44,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 119 transitions. [2022-02-20 23:44:44,255 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 119 transitions. [2022-02-20 23:44:44,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:44,389 INFO L225 Difference]: With dead ends: 112 [2022-02-20 23:44:44,389 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:44:44,390 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:44:44,390 INFO L933 BasicCegarLoop]: 68 mSDtfsCounter, 54 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 332 SdHoareTripleChecker+Invalid, 287 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:44,390 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 332 Invalid, 287 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 281 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:44:44,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:44:44,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 102. [2022-02-20 23:44:44,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:44,394 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:44,394 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:44,394 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:44,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,396 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:44,396 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 118 transitions. [2022-02-20 23:44:44,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,397 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 112 states. [2022-02-20 23:44:44,397 INFO L87 Difference]: Start difference. First operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 112 states. [2022-02-20 23:44:44,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,400 INFO L93 Difference]: Finished difference Result 112 states and 118 transitions. [2022-02-20 23:44:44,400 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 118 transitions. [2022-02-20 23:44:44,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:44,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:44,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 63 states have (on average 1.6349206349206349) internal successors, (103), 89 states have internal predecessors, (103), 7 states have call successors, (7), 5 states have call predecessors, (7), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:44,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 117 transitions. [2022-02-20 23:44:44,403 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 117 transitions. Word has length 14 [2022-02-20 23:44:44,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:44,403 INFO L470 AbstractCegarLoop]: Abstraction has 102 states and 117 transitions. [2022-02-20 23:44:44,403 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,403 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 117 transitions. [2022-02-20 23:44:44,403 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:44:44,403 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:44,403 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:44,415 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:44:44,614 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:44:44,615 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting list_add_tailErr0REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:44,615 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:44,615 INFO L85 PathProgramCache]: Analyzing trace with hash -70636769, now seen corresponding path program 1 times [2022-02-20 23:44:44,615 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:44,616 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1237869253] [2022-02-20 23:44:44,616 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:44,616 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:44,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:44,617 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:44:44,617 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:44:44,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:44,695 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:44:44,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:44,705 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:44,716 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:44,772 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:44:44,772 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 17 [2022-02-20 23:44:44,814 INFO L290 TraceCheckUtils]: 0: Hoare triple {2450#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(14bv32, 2bv32); {2450#true} is VALID [2022-02-20 23:44:44,815 INFO L290 TraceCheckUtils]: 1: Hoare triple {2450#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {2450#true} is VALID [2022-02-20 23:44:44,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {2450#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {2461#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,816 INFO L290 TraceCheckUtils]: 3: Hoare triple {2461#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {2461#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,817 INFO L272 TraceCheckUtils]: 4: Hoare triple {2461#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {2468#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:44,817 INFO L290 TraceCheckUtils]: 5: Hoare triple {2468#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,817 INFO L290 TraceCheckUtils]: 6: Hoare triple {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:44,818 INFO L290 TraceCheckUtils]: 8: Hoare triple {2472#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:44,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:44,824 INFO L290 TraceCheckUtils]: 10: Hoare triple {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:44,825 INFO L272 TraceCheckUtils]: 11: Hoare triple {2482#(= (_ bv0 1) (bvadd (select |#valid| |create_sub_list_insert_sub_~head#1.base|) (_ bv1 1)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {2492#(= (_ bv0 1) (bvadd (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:44,825 INFO L290 TraceCheckUtils]: 12: Hoare triple {2492#(= (_ bv0 1) (bvadd (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {2496#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:44:44,825 INFO L290 TraceCheckUtils]: 13: Hoare triple {2496#(= (_ bv0 1) (bvadd (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} assume !(1bv1 == #valid[~head#1.base]); {2451#false} is VALID [2022-02-20 23:44:44,826 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:44:44,826 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:44,826 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:44,826 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1237869253] [2022-02-20 23:44:44,826 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1237869253] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:44,826 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:44,826 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:44:44,826 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [280282366] [2022-02-20 23:44:44,826 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:44,826 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:44,827 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:44,827 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,841 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:44,841 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:44:44,841 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:44,841 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:44:44,842 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:44,842 INFO L87 Difference]: Start difference. First operand 102 states and 117 transitions. Second operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:45,933 INFO L93 Difference]: Finished difference Result 131 states and 146 transitions. [2022-02-20 23:44:45,933 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:44:45,933 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:44:45,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:45,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-02-20 23:44:45,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-02-20 23:44:45,936 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-02-20 23:44:46,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:46,045 INFO L225 Difference]: With dead ends: 131 [2022-02-20 23:44:46,045 INFO L226 Difference]: Without dead ends: 131 [2022-02-20 23:44:46,045 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:44:46,046 INFO L933 BasicCegarLoop]: 59 mSDtfsCounter, 87 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 282 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 278 SdHoareTripleChecker+Invalid, 291 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 282 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:46,046 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [88 Valid, 278 Invalid, 291 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 282 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:44:46,046 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-02-20 23:44:46,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 112. [2022-02-20 23:44:46,049 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:46,049 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,049 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,050 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,052 INFO L93 Difference]: Finished difference Result 131 states and 146 transitions. [2022-02-20 23:44:46,052 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 146 transitions. [2022-02-20 23:44:46,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,053 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 131 states. [2022-02-20 23:44:46,053 INFO L87 Difference]: Start difference. First operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 131 states. [2022-02-20 23:44:46,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,056 INFO L93 Difference]: Finished difference Result 131 states and 146 transitions. [2022-02-20 23:44:46,056 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 146 transitions. [2022-02-20 23:44:46,056 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,056 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,056 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:46,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:46,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 72 states have (on average 1.6666666666666667) internal successors, (120), 98 states have internal predecessors, (120), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 134 transitions. [2022-02-20 23:44:46,059 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 134 transitions. Word has length 14 [2022-02-20 23:44:46,059 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:46,059 INFO L470 AbstractCegarLoop]: Abstraction has 112 states and 134 transitions. [2022-02-20 23:44:46,059 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 1.7142857142857142) internal successors, (12), 6 states have internal predecessors, (12), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,060 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 134 transitions. [2022-02-20 23:44:46,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:46,060 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:46,060 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:46,069 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:44:46,267 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:44:46,269 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting list_add_tailErr2REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:46,269 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:46,269 INFO L85 PathProgramCache]: Analyzing trace with hash 837542848, now seen corresponding path program 1 times [2022-02-20 23:44:46,270 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:46,270 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [712754899] [2022-02-20 23:44:46,270 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:46,270 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:46,270 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:46,271 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:44:46,271 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:44:46,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:46,359 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:44:46,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:46,367 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 0: Hoare triple {3010#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(14bv32, 2bv32); {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {3010#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {3010#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 3: Hoare triple {3010#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L272 TraceCheckUtils]: 4: Hoare triple {3010#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 5: Hoare triple {3010#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {3010#true} is VALID [2022-02-20 23:44:46,413 INFO L290 TraceCheckUtils]: 6: Hoare triple {3010#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L290 TraceCheckUtils]: 7: Hoare triple {3010#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L290 TraceCheckUtils]: 8: Hoare triple {3010#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L290 TraceCheckUtils]: 9: Hoare triple {3010#true} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L290 TraceCheckUtils]: 10: Hoare triple {3010#true} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L272 TraceCheckUtils]: 11: Hoare triple {3010#true} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {3010#true} is VALID [2022-02-20 23:44:46,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {3010#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {3010#true} is VALID [2022-02-20 23:44:46,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {3010#true} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {3054#(= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|))} is VALID [2022-02-20 23:44:46,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {3054#(= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {3058#(= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:46,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {3058#(= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~next#1.base]); {3011#false} is VALID [2022-02-20 23:44:46,416 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:44:46,416 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:46,416 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:46,416 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [712754899] [2022-02-20 23:44:46,416 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [712754899] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:46,416 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:46,416 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:46,416 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [40155264] [2022-02-20 23:44:46,416 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:46,416 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:46,416 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:46,417 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:46,432 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:46,432 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:46,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:46,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:46,433 INFO L87 Difference]: Start difference. First operand 112 states and 134 transitions. Second operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,724 INFO L93 Difference]: Finished difference Result 111 states and 131 transitions. [2022-02-20 23:44:46,725 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:44:46,725 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:46,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:46,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 87 transitions. [2022-02-20 23:44:46,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 87 transitions. [2022-02-20 23:44:46,727 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 87 transitions. [2022-02-20 23:44:46,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:46,802 INFO L225 Difference]: With dead ends: 111 [2022-02-20 23:44:46,802 INFO L226 Difference]: Without dead ends: 111 [2022-02-20 23:44:46,802 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:46,803 INFO L933 BasicCegarLoop]: 77 mSDtfsCounter, 27 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:46,803 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 169 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:46,803 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2022-02-20 23:44:46,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 111. [2022-02-20 23:44:46,805 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:46,805 INFO L82 GeneralOperation]: Start isEquivalent. First operand 111 states. Second operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,806 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,806 INFO L87 Difference]: Start difference. First operand 111 states. Second operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,808 INFO L93 Difference]: Finished difference Result 111 states and 131 transitions. [2022-02-20 23:44:46,808 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 131 transitions. [2022-02-20 23:44:46,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,809 INFO L74 IsIncluded]: Start isIncluded. First operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 111 states. [2022-02-20 23:44:46,809 INFO L87 Difference]: Start difference. First operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 111 states. [2022-02-20 23:44:46,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:46,811 INFO L93 Difference]: Finished difference Result 111 states and 131 transitions. [2022-02-20 23:44:46,811 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 131 transitions. [2022-02-20 23:44:46,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:46,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:46,811 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:46,811 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:46,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 111 states, 72 states have (on average 1.625) internal successors, (117), 97 states have internal predecessors, (117), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:46,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 131 transitions. [2022-02-20 23:44:46,813 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 131 transitions. Word has length 16 [2022-02-20 23:44:46,813 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:46,813 INFO L470 AbstractCegarLoop]: Abstraction has 111 states and 131 transitions. [2022-02-20 23:44:46,813 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 1 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:46,813 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 131 transitions. [2022-02-20 23:44:46,814 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:46,814 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:46,814 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:46,825 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:47,021 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:47,021 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting list_add_tailErr3REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:47,021 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:47,021 INFO L85 PathProgramCache]: Analyzing trace with hash 837542849, now seen corresponding path program 1 times [2022-02-20 23:44:47,022 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:47,022 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1249303527] [2022-02-20 23:44:47,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:47,022 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:47,022 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:47,023 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:47,024 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:47,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,111 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:44:47,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:47,120 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:47,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {3507#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(14bv32, 2bv32); {3507#true} is VALID [2022-02-20 23:44:47,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {3507#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {3507#true} is VALID [2022-02-20 23:44:47,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {3507#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {3518#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:44:47,231 INFO L290 TraceCheckUtils]: 3: Hoare triple {3518#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {3518#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:44:47,232 INFO L272 TraceCheckUtils]: 4: Hoare triple {3518#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {3525#(= |create_sub_list_#in~sub#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:47,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {3525#(= |create_sub_list_#in~sub#1.offset| (_ bv8 32))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:47,232 INFO L290 TraceCheckUtils]: 6: Hoare triple {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:47,233 INFO L290 TraceCheckUtils]: 7: Hoare triple {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} is VALID [2022-02-20 23:44:47,233 INFO L290 TraceCheckUtils]: 8: Hoare triple {3529#(= (_ bv8 32) |create_sub_list_~sub#1.offset|)} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:47,233 INFO L290 TraceCheckUtils]: 9: Hoare triple {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:47,234 INFO L290 TraceCheckUtils]: 10: Hoare triple {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} is VALID [2022-02-20 23:44:47,235 INFO L272 TraceCheckUtils]: 11: Hoare triple {3539#(= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {3549#(= (_ bv8 32) |list_add_tail_#in~head#1.offset|)} is VALID [2022-02-20 23:44:47,235 INFO L290 TraceCheckUtils]: 12: Hoare triple {3549#(= (_ bv8 32) |list_add_tail_#in~head#1.offset|)} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {3553#(= (_ bv8 32) |list_add_tail_~head#1.offset|)} is VALID [2022-02-20 23:44:47,236 INFO L290 TraceCheckUtils]: 13: Hoare triple {3553#(= (_ bv8 32) |list_add_tail_~head#1.offset|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {3557#(and (= (_ bv8 32) |list_add_tail_~head#1.offset|) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:44:47,236 INFO L290 TraceCheckUtils]: 14: Hoare triple {3557#(and (= (_ bv8 32) |list_add_tail_~head#1.offset|) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {3561#(and (= (_ bv8 32) |list_add_tail___list_add_~next#1.offset|) (bvule (_ bv16 32) (select |#length| |list_add_tail___list_add_~next#1.base|)))} is VALID [2022-02-20 23:44:47,237 INFO L290 TraceCheckUtils]: 15: Hoare triple {3561#(and (= (_ bv8 32) |list_add_tail___list_add_~next#1.offset|) (bvule (_ bv16 32) (select |#length| |list_add_tail___list_add_~next#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, __list_add_~next#1.offset)), #length[__list_add_~next#1.base]) && ~bvule32(~bvadd32(4bv32, __list_add_~next#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, __list_add_~next#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, __list_add_~next#1.offset))); {3508#false} is VALID [2022-02-20 23:44:47,237 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:44:47,237 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:47,237 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:47,237 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1249303527] [2022-02-20 23:44:47,237 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1249303527] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:47,237 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:47,237 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:44:47,237 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [56067306] [2022-02-20 23:44:47,237 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:47,238 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:47,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:47,238 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:47,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:47,261 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:44:47,261 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:47,261 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:44:47,261 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:44:47,261 INFO L87 Difference]: Start difference. First operand 111 states and 131 transitions. Second operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:48,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,575 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2022-02-20 23:44:48,575 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:44:48,575 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:44:48,575 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:48,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:48,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 116 transitions. [2022-02-20 23:44:48,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:48,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 116 transitions. [2022-02-20 23:44:48,578 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 116 transitions. [2022-02-20 23:44:48,696 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:48,697 INFO L225 Difference]: With dead ends: 119 [2022-02-20 23:44:48,698 INFO L226 Difference]: Without dead ends: 119 [2022-02-20 23:44:48,698 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:44:48,698 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 84 mSDsluCounter, 517 mSDsCounter, 0 mSdLazyCounter, 176 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 588 SdHoareTripleChecker+Invalid, 179 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 176 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:48,698 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 588 Invalid, 179 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 176 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:44:48,699 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-02-20 23:44:48,700 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 111. [2022-02-20 23:44:48,700 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:48,701 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:48,706 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:48,706 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:48,708 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,708 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2022-02-20 23:44:48,708 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2022-02-20 23:44:48,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:48,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:48,708 INFO L74 IsIncluded]: Start isIncluded. First operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 119 states. [2022-02-20 23:44:48,709 INFO L87 Difference]: Start difference. First operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 119 states. [2022-02-20 23:44:48,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:48,711 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2022-02-20 23:44:48,711 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2022-02-20 23:44:48,711 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:48,711 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:48,711 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:48,711 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:48,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 111 states, 72 states have (on average 1.6111111111111112) internal successors, (116), 97 states have internal predecessors, (116), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:48,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 130 transitions. [2022-02-20 23:44:48,713 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 130 transitions. Word has length 16 [2022-02-20 23:44:48,713 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:48,713 INFO L470 AbstractCegarLoop]: Abstraction has 111 states and 130 transitions. [2022-02-20 23:44:48,713 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 1.5555555555555556) internal successors, (14), 8 states have internal predecessors, (14), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:48,713 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 130 transitions. [2022-02-20 23:44:48,714 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:44:48,714 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:48,714 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:48,726 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:48,921 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:48,921 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting list_add_tailErr4REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:48,921 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:48,921 INFO L85 PathProgramCache]: Analyzing trace with hash 194024551, now seen corresponding path program 1 times [2022-02-20 23:44:48,922 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:48,922 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2020510218] [2022-02-20 23:44:48,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:48,922 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:48,922 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:48,923 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:48,933 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:48,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:49,002 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:49,007 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:49,008 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:49,028 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:49,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {4042#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(14bv32, 2bv32); {4042#true} is VALID [2022-02-20 23:44:49,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {4042#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {4042#true} is VALID [2022-02-20 23:44:49,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {4042#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {4042#true} is VALID [2022-02-20 23:44:49,066 INFO L290 TraceCheckUtils]: 3: Hoare triple {4042#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {4042#true} is VALID [2022-02-20 23:44:49,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {4042#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {4042#true} is VALID [2022-02-20 23:44:49,067 INFO L290 TraceCheckUtils]: 5: Hoare triple {4042#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {4042#true} is VALID [2022-02-20 23:44:49,067 INFO L290 TraceCheckUtils]: 6: Hoare triple {4042#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {4042#true} is VALID [2022-02-20 23:44:49,067 INFO L290 TraceCheckUtils]: 7: Hoare triple {4042#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {4042#true} is VALID [2022-02-20 23:44:49,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {4042#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,069 INFO L290 TraceCheckUtils]: 10: Hoare triple {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,070 INFO L272 TraceCheckUtils]: 11: Hoare triple {4071#(= (select |#valid| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv1 1))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {4081#(= (select |#valid| |list_add_tail_#in~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {4081#(= (select |#valid| |list_add_tail_#in~new#1.base|) (_ bv1 1))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {4085#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {4085#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {4085#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {4085#(= (select |#valid| |list_add_tail_~new#1.base|) (_ bv1 1))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {4092#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,072 INFO L290 TraceCheckUtils]: 15: Hoare triple {4092#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {4092#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:49,073 INFO L290 TraceCheckUtils]: 16: Hoare triple {4092#(= (select |#valid| |list_add_tail___list_add_~new#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~new#1.base]); {4043#false} is VALID [2022-02-20 23:44:49,073 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:44:49,073 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:49,073 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:49,073 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2020510218] [2022-02-20 23:44:49,073 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2020510218] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:49,073 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:49,073 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:49,074 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1661385402] [2022-02-20 23:44:49,074 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:49,074 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:44:49,074 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:49,075 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:49,092 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:49,092 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:49,092 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:49,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:49,093 INFO L87 Difference]: Start difference. First operand 111 states and 130 transitions. Second operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,753 INFO L93 Difference]: Finished difference Result 118 states and 127 transitions. [2022-02-20 23:44:49,753 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:44:49,753 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:44:49,753 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:49,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 104 transitions. [2022-02-20 23:44:49,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 104 transitions. [2022-02-20 23:44:49,755 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 104 transitions. [2022-02-20 23:44:49,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:49,870 INFO L225 Difference]: With dead ends: 118 [2022-02-20 23:44:49,870 INFO L226 Difference]: Without dead ends: 118 [2022-02-20 23:44:49,870 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:49,871 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 49 mSDsluCounter, 179 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 251 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:49,871 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 251 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:44:49,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states. [2022-02-20 23:44:49,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 110. [2022-02-20 23:44:49,873 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:49,873 INFO L82 GeneralOperation]: Start isEquivalent. First operand 118 states. Second operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:49,874 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:49,874 INFO L87 Difference]: Start difference. First operand 118 states. Second operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:49,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,875 INFO L93 Difference]: Finished difference Result 118 states and 127 transitions. [2022-02-20 23:44:49,876 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 127 transitions. [2022-02-20 23:44:49,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:49,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:49,877 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 118 states. [2022-02-20 23:44:49,877 INFO L87 Difference]: Start difference. First operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 118 states. [2022-02-20 23:44:49,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:49,879 INFO L93 Difference]: Finished difference Result 118 states and 127 transitions. [2022-02-20 23:44:49,879 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 127 transitions. [2022-02-20 23:44:49,879 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:49,879 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:49,879 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:49,879 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:49,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 72 states have (on average 1.5416666666666667) internal successors, (111), 96 states have internal predecessors, (111), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:49,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 125 transitions. [2022-02-20 23:44:49,881 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 125 transitions. Word has length 17 [2022-02-20 23:44:49,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:49,881 INFO L470 AbstractCegarLoop]: Abstraction has 110 states and 125 transitions. [2022-02-20 23:44:49,881 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:49,881 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 125 transitions. [2022-02-20 23:44:49,881 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:44:49,881 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:49,882 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:49,889 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:50,082 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:50,082 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting list_add_tailErr5REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:50,082 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:50,082 INFO L85 PathProgramCache]: Analyzing trace with hash 194024552, now seen corresponding path program 1 times [2022-02-20 23:44:50,083 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:50,083 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1410702445] [2022-02-20 23:44:50,083 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:50,083 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:50,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:50,084 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:50,091 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:50,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,192 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:44:50,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:50,202 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:50,226 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:50,319 INFO L290 TraceCheckUtils]: 0: Hoare triple {4566#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(14bv32, 2bv32); {4566#true} is VALID [2022-02-20 23:44:50,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {4566#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {4566#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L290 TraceCheckUtils]: 3: Hoare triple {4566#true} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L272 TraceCheckUtils]: 4: Hoare triple {4566#true} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L290 TraceCheckUtils]: 5: Hoare triple {4566#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L290 TraceCheckUtils]: 6: Hoare triple {4566#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {4566#true} is VALID [2022-02-20 23:44:50,320 INFO L290 TraceCheckUtils]: 7: Hoare triple {4566#true} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {4566#true} is VALID [2022-02-20 23:44:50,327 INFO L290 TraceCheckUtils]: 8: Hoare triple {4566#true} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:50,328 INFO L290 TraceCheckUtils]: 9: Hoare triple {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:50,328 INFO L290 TraceCheckUtils]: 10: Hoare triple {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:50,329 INFO L272 TraceCheckUtils]: 11: Hoare triple {4595#(and (= (select |#length| |create_sub_list_insert_sub_~sub~0#1.base|) (_ bv12 32)) (= |create_sub_list_insert_sub_~sub~0#1.offset| (_ bv0 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {4605#(and (= (_ bv4 32) |list_add_tail_#in~new#1.offset|) (= (select |#length| |list_add_tail_#in~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:50,330 INFO L290 TraceCheckUtils]: 12: Hoare triple {4605#(and (= (_ bv4 32) |list_add_tail_#in~new#1.offset|) (= (select |#length| |list_add_tail_#in~new#1.base|) (_ bv12 32)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {4609#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} is VALID [2022-02-20 23:44:50,330 INFO L290 TraceCheckUtils]: 13: Hoare triple {4609#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {4609#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} is VALID [2022-02-20 23:44:50,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {4609#(and (= (select |#length| |list_add_tail_~new#1.base|) (_ bv12 32)) (= (_ bv4 32) |list_add_tail_~new#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {4616#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:50,331 INFO L290 TraceCheckUtils]: 15: Hoare triple {4616#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {4616#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:44:50,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {4616#(and (= (_ bv4 32) |list_add_tail___list_add_~new#1.offset|) (= (select |#length| |list_add_tail___list_add_~new#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, __list_add_~new#1.offset), #length[__list_add_~new#1.base]) && ~bvule32(__list_add_~new#1.offset, ~bvadd32(4bv32, __list_add_~new#1.offset))) && ~bvule32(0bv32, __list_add_~new#1.offset)); {4567#false} is VALID [2022-02-20 23:44:50,338 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:44:50,338 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:50,339 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:50,339 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1410702445] [2022-02-20 23:44:50,339 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1410702445] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:50,339 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:50,339 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:44:50,339 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2024455668] [2022-02-20 23:44:50,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:50,339 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:44:50,339 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:50,339 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:50,358 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:50,359 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:50,359 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:50,359 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:50,359 INFO L87 Difference]: Start difference. First operand 110 states and 125 transitions. Second operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:51,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:51,160 INFO L93 Difference]: Finished difference Result 116 states and 123 transitions. [2022-02-20 23:44:51,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:51,161 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:44:51,161 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:51,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:51,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 101 transitions. [2022-02-20 23:44:51,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:51,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 101 transitions. [2022-02-20 23:44:51,162 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 101 transitions. [2022-02-20 23:44:51,270 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:51,272 INFO L225 Difference]: With dead ends: 116 [2022-02-20 23:44:51,272 INFO L226 Difference]: Without dead ends: 116 [2022-02-20 23:44:51,272 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:51,272 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 36 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 271 SdHoareTripleChecker+Invalid, 150 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:51,272 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 271 Invalid, 150 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:44:51,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-02-20 23:44:51,274 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 110. [2022-02-20 23:44:51,274 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:51,274 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:51,275 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:51,275 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:51,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:51,276 INFO L93 Difference]: Finished difference Result 116 states and 123 transitions. [2022-02-20 23:44:51,276 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 123 transitions. [2022-02-20 23:44:51,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:51,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:51,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 116 states. [2022-02-20 23:44:51,277 INFO L87 Difference]: Start difference. First operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 116 states. [2022-02-20 23:44:51,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:51,278 INFO L93 Difference]: Finished difference Result 116 states and 123 transitions. [2022-02-20 23:44:51,278 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 123 transitions. [2022-02-20 23:44:51,279 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:51,279 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:51,279 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:51,279 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:51,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 72 states have (on average 1.4861111111111112) internal successors, (107), 96 states have internal predecessors, (107), 7 states have call successors, (7), 6 states have call predecessors, (7), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 23:44:51,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 121 transitions. [2022-02-20 23:44:51,281 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 121 transitions. Word has length 17 [2022-02-20 23:44:51,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:51,281 INFO L470 AbstractCegarLoop]: Abstraction has 110 states and 121 transitions. [2022-02-20 23:44:51,282 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:51,282 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-02-20 23:44:51,282 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:44:51,282 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:51,282 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:51,289 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:51,482 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:51,482 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting list_add_tailErr8REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:51,483 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:51,483 INFO L85 PathProgramCache]: Analyzing trace with hash 1774001130, now seen corresponding path program 1 times [2022-02-20 23:44:51,483 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:51,483 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [954694506] [2022-02-20 23:44:51,483 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:51,483 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:51,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:51,512 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:51,512 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:51,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:51,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 28 conjunts are in the unsatisfiable core [2022-02-20 23:44:51,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:51,676 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:51,685 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:51,722 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:51,765 INFO L356 Elim1Store]: treesize reduction 23, result has 28.1 percent of original size [2022-02-20 23:44:51,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 21 treesize of output 20 [2022-02-20 23:44:51,801 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:51,802 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:44:51,857 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:51,973 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:44:52,011 INFO L290 TraceCheckUtils]: 0: Hoare triple {5084#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(14bv32, 2bv32); {5084#true} is VALID [2022-02-20 23:44:52,011 INFO L290 TraceCheckUtils]: 1: Hoare triple {5084#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {5084#true} is VALID [2022-02-20 23:44:52,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {5084#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {5095#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,012 INFO L290 TraceCheckUtils]: 3: Hoare triple {5095#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {5095#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {5095#(= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {5102#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} is VALID [2022-02-20 23:44:52,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {5102#(= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {5106#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,019 INFO L290 TraceCheckUtils]: 6: Hoare triple {5106#(= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {5110#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:52,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {5110#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {5110#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:52,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {5110#(and (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {5117#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} is VALID [2022-02-20 23:44:52,021 INFO L290 TraceCheckUtils]: 9: Hoare triple {5117#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {5117#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} is VALID [2022-02-20 23:44:52,024 INFO L290 TraceCheckUtils]: 10: Hoare triple {5117#(and (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {5124#(= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32))))} is VALID [2022-02-20 23:44:52,026 INFO L272 TraceCheckUtils]: 11: Hoare triple {5124#(= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {5128#(= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|)))} is VALID [2022-02-20 23:44:52,026 INFO L290 TraceCheckUtils]: 12: Hoare triple {5128#(= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {5132#(= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|)) |list_add_tail_~head#1.base|)} is VALID [2022-02-20 23:44:52,027 INFO L290 TraceCheckUtils]: 13: Hoare triple {5132#(= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|)) |list_add_tail_~head#1.base|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {5136#(= (select |#valid| |list_add_tail_#t~mem3#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,027 INFO L290 TraceCheckUtils]: 14: Hoare triple {5136#(= (select |#valid| |list_add_tail_#t~mem3#1.base|) (_ bv1 1))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,027 INFO L290 TraceCheckUtils]: 15: Hoare triple {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,028 INFO L290 TraceCheckUtils]: 16: Hoare triple {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,028 INFO L290 TraceCheckUtils]: 17: Hoare triple {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:44:52,028 INFO L290 TraceCheckUtils]: 18: Hoare triple {5140#(= (select |#valid| |list_add_tail___list_add_~prev#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[__list_add_~prev#1.base]); {5085#false} is VALID [2022-02-20 23:44:52,028 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:44:52,029 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:52,029 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:52,029 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [954694506] [2022-02-20 23:44:52,029 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [954694506] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:52,029 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:52,029 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:44:52,029 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1731165447] [2022-02-20 23:44:52,029 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:52,029 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:44:52,029 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:52,030 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:52,052 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:52,052 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:44:52,052 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:52,052 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:44:52,052 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:44:52,053 INFO L87 Difference]: Start difference. First operand 110 states and 121 transitions. Second operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,030 INFO L93 Difference]: Finished difference Result 145 states and 161 transitions. [2022-02-20 23:44:54,030 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:44:54,030 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:44:54,030 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:54,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 112 transitions. [2022-02-20 23:44:54,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 112 transitions. [2022-02-20 23:44:54,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 112 transitions. [2022-02-20 23:44:54,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:54,142 INFO L225 Difference]: With dead ends: 145 [2022-02-20 23:44:54,142 INFO L226 Difference]: Without dead ends: 145 [2022-02-20 23:44:54,142 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=73, Invalid=307, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:44:54,142 INFO L933 BasicCegarLoop]: 59 mSDtfsCounter, 57 mSDsluCounter, 384 mSDsCounter, 0 mSdLazyCounter, 387 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 443 SdHoareTripleChecker+Invalid, 406 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 387 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:54,143 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 443 Invalid, 406 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 387 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:44:54,143 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2022-02-20 23:44:54,145 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 132. [2022-02-20 23:44:54,145 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:54,145 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:54,145 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:54,146 INFO L87 Difference]: Start difference. First operand 145 states. Second operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:54,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,148 INFO L93 Difference]: Finished difference Result 145 states and 161 transitions. [2022-02-20 23:44:54,148 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 161 transitions. [2022-02-20 23:44:54,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:54,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:54,148 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 145 states. [2022-02-20 23:44:54,148 INFO L87 Difference]: Start difference. First operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 145 states. [2022-02-20 23:44:54,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:54,150 INFO L93 Difference]: Finished difference Result 145 states and 161 transitions. [2022-02-20 23:44:54,150 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 161 transitions. [2022-02-20 23:44:54,151 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:54,151 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:54,151 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:54,151 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:54,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 92 states have (on average 1.423913043478261) internal successors, (131), 116 states have internal predecessors, (131), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:54,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 149 transitions. [2022-02-20 23:44:54,153 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 149 transitions. Word has length 19 [2022-02-20 23:44:54,153 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:54,153 INFO L470 AbstractCegarLoop]: Abstraction has 132 states and 149 transitions. [2022-02-20 23:44:54,153 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:54,153 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 149 transitions. [2022-02-20 23:44:54,153 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:44:54,153 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:54,153 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:54,165 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:54,354 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:44:54,354 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting list_add_tailErr9REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:54,354 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:54,354 INFO L85 PathProgramCache]: Analyzing trace with hash 1774001131, now seen corresponding path program 1 times [2022-02-20 23:44:54,354 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:54,355 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [424722016] [2022-02-20 23:44:54,355 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:54,355 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:54,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:54,356 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:44:54,357 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2022-02-20 23:44:54,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:54,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 46 conjunts are in the unsatisfiable core [2022-02-20 23:44:54,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:54,515 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:54,528 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:54,533 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:54,626 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:54,632 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:54,691 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:54,692 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 21 treesize of output 20 [2022-02-20 23:44:54,704 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:54,705 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 21 treesize of output 20 [2022-02-20 23:44:54,747 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:54,747 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:44:54,757 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:44:54,829 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 14 treesize of output 16 [2022-02-20 23:44:54,842 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 14 treesize of output 16 [2022-02-20 23:44:54,948 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:44:54,951 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:44:55,014 INFO L290 TraceCheckUtils]: 0: Hoare triple {5735#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(14bv32, 2bv32); {5735#true} is VALID [2022-02-20 23:44:55,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {5735#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {5735#true} is VALID [2022-02-20 23:44:55,015 INFO L290 TraceCheckUtils]: 2: Hoare triple {5735#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {5746#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:55,016 INFO L290 TraceCheckUtils]: 3: Hoare triple {5746#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {5746#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:55,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {5746#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {5753#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd |create_sub_list_#in~sub#1.offset| (_ bv4294967288 32)) (_ bv0 32)))} is VALID [2022-02-20 23:44:55,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {5753#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd |create_sub_list_#in~sub#1.offset| (_ bv4294967288 32)) (_ bv0 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {5757#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:55,019 INFO L290 TraceCheckUtils]: 6: Hoare triple {5757#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {5761#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:55,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {5761#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {5761#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:44:55,022 INFO L290 TraceCheckUtils]: 8: Hoare triple {5761#(and (= (_ bv0 32) (bvadd |create_sub_list_~sub#1.offset| (_ bv4294967288 32))) (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (select (select |#memory_$Pointer$.offset| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.offset|) (= (select (select |#memory_$Pointer$.base| |create_sub_list_~sub#1.base|) (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|)) |create_sub_list_~sub#1.base|) (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {5768#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:55,022 INFO L290 TraceCheckUtils]: 9: Hoare triple {5768#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {5768#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:55,027 INFO L290 TraceCheckUtils]: 10: Hoare triple {5768#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (not (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_insert_sub_~sub~0#1.base|)) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {5775#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} is VALID [2022-02-20 23:44:55,028 INFO L272 TraceCheckUtils]: 11: Hoare triple {5775#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (= |create_sub_list_insert_sub_~head#1.base| (select (select |#memory_$Pointer$.base| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (_ bv8 32) (select (select |#memory_$Pointer$.offset| |create_sub_list_insert_sub_~head#1.base|) (_ bv12 32))) (= (select |#length| |create_sub_list_insert_sub_~head#1.base|) (_ bv24 32)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {5779#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_#in~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (_ bv12 32))))} is VALID [2022-02-20 23:44:55,029 INFO L290 TraceCheckUtils]: 12: Hoare triple {5779#(and (= (select |#length| |list_add_tail_#in~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#in~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_#in~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= |list_add_tail_#in~head#1.base| (select (select |#memory_$Pointer$.base| |list_add_tail_#in~head#1.base|) (_ bv12 32))))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {5783#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (_ bv12 32)) |list_add_tail_~head#1.base|))} is VALID [2022-02-20 23:44:55,029 INFO L290 TraceCheckUtils]: 13: Hoare triple {5783#(and (= (select |#length| |list_add_tail_~head#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_~head#1.offset|) (= (select (select |#memory_$Pointer$.offset| |list_add_tail_~head#1.base|) (_ bv12 32)) (_ bv8 32)) (= (select (select |#memory_$Pointer$.base| |list_add_tail_~head#1.base|) (_ bv12 32)) |list_add_tail_~head#1.base|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {5787#(and (= (select |#length| |list_add_tail_#t~mem3#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#t~mem3#1.offset|))} is VALID [2022-02-20 23:44:55,030 INFO L290 TraceCheckUtils]: 14: Hoare triple {5787#(and (= (select |#length| |list_add_tail_#t~mem3#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail_#t~mem3#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:55,030 INFO L290 TraceCheckUtils]: 15: Hoare triple {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:55,031 INFO L290 TraceCheckUtils]: 16: Hoare triple {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:55,031 INFO L290 TraceCheckUtils]: 17: Hoare triple {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} is VALID [2022-02-20 23:44:55,032 INFO L290 TraceCheckUtils]: 18: Hoare triple {5791#(and (= (select |#length| |list_add_tail___list_add_~prev#1.base|) (_ bv24 32)) (= (_ bv8 32) |list_add_tail___list_add_~prev#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, __list_add_~prev#1.offset), #length[__list_add_~prev#1.base]) && ~bvule32(__list_add_~prev#1.offset, ~bvadd32(4bv32, __list_add_~prev#1.offset))) && ~bvule32(0bv32, __list_add_~prev#1.offset)); {5736#false} is VALID [2022-02-20 23:44:55,032 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:44:55,032 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:44:55,032 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:44:55,032 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [424722016] [2022-02-20 23:44:55,032 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [424722016] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:55,032 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:55,032 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:44:55,033 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1831820737] [2022-02-20 23:44:55,033 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:55,033 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:44:55,033 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:55,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:55,058 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:55,058 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:44:55,058 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:44:55,058 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:44:55,058 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:44:55,058 INFO L87 Difference]: Start difference. First operand 132 states and 149 transitions. Second operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,312 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,313 INFO L93 Difference]: Finished difference Result 135 states and 150 transitions. [2022-02-20 23:44:57,313 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:44:57,313 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:44:57,313 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:57,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 112 transitions. [2022-02-20 23:44:57,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 112 transitions. [2022-02-20 23:44:57,328 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 112 transitions. [2022-02-20 23:44:57,441 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:57,443 INFO L225 Difference]: With dead ends: 135 [2022-02-20 23:44:57,443 INFO L226 Difference]: Without dead ends: 135 [2022-02-20 23:44:57,443 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=73, Invalid=307, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:44:57,444 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 31 mSDsluCounter, 406 mSDsCounter, 0 mSdLazyCounter, 395 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 477 SdHoareTripleChecker+Invalid, 412 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 395 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:57,444 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 477 Invalid, 412 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 395 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 23:44:57,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-02-20 23:44:57,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 135. [2022-02-20 23:44:57,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:57,447 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:57,447 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:57,447 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:57,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,456 INFO L93 Difference]: Finished difference Result 135 states and 150 transitions. [2022-02-20 23:44:57,456 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 150 transitions. [2022-02-20 23:44:57,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,457 INFO L74 IsIncluded]: Start isIncluded. First operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 135 states. [2022-02-20 23:44:57,457 INFO L87 Difference]: Start difference. First operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 135 states. [2022-02-20 23:44:57,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:57,460 INFO L93 Difference]: Finished difference Result 135 states and 150 transitions. [2022-02-20 23:44:57,460 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 150 transitions. [2022-02-20 23:44:57,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:57,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:57,461 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:57,461 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:57,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 135 states, 94 states have (on average 1.4042553191489362) internal successors, (132), 119 states have internal predecessors, (132), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-02-20 23:44:57,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 135 states to 135 states and 150 transitions. [2022-02-20 23:44:57,466 INFO L78 Accepts]: Start accepts. Automaton has 135 states and 150 transitions. Word has length 19 [2022-02-20 23:44:57,466 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:57,466 INFO L470 AbstractCegarLoop]: Abstraction has 135 states and 150 transitions. [2022-02-20 23:44:57,467 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 10 states have (on average 1.7) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:57,467 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 150 transitions. [2022-02-20 23:44:57,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:44:57,467 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:57,467 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:57,477 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:57,675 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:44:57,676 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting create_sub_listErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:44:57,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:57,676 INFO L85 PathProgramCache]: Analyzing trace with hash 1031850971, now seen corresponding path program 1 times [2022-02-20 23:44:57,677 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:44:57,677 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1058145881] [2022-02-20 23:44:57,677 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:57,677 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:44:57,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:44:57,678 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:44:57,678 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2022-02-20 23:44:57,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:57,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:44:57,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:57,847 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:57,862 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:44:57,866 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:44:57,984 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:58,064 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:44:58,065 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:44:58,072 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:44:58,073 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:44:58,131 INFO L290 TraceCheckUtils]: 0: Hoare triple {6359#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(14bv32, 2bv32); {6359#true} is VALID [2022-02-20 23:44:58,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {6359#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {6359#true} is VALID [2022-02-20 23:44:58,132 INFO L290 TraceCheckUtils]: 2: Hoare triple {6359#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:58,133 INFO L290 TraceCheckUtils]: 3: Hoare triple {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:58,133 INFO L272 TraceCheckUtils]: 4: Hoare triple {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:44:58,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:44:58,134 INFO L290 TraceCheckUtils]: 6: Hoare triple {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:44:58,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:44:58,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,137 INFO L290 TraceCheckUtils]: 9: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 10: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,138 INFO L272 TraceCheckUtils]: 11: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {6359#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 13: Hoare triple {6359#true} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 14: Hoare triple {6359#true} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 15: Hoare triple {6359#true} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 16: Hoare triple {6359#true} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 17: Hoare triple {6359#true} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 18: Hoare triple {6359#true} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {6359#true} is VALID [2022-02-20 23:44:58,138 INFO L290 TraceCheckUtils]: 19: Hoare triple {6359#true} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {6359#true} is VALID [2022-02-20 23:44:58,139 INFO L290 TraceCheckUtils]: 20: Hoare triple {6359#true} assume true; {6359#true} is VALID [2022-02-20 23:44:58,140 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6359#true} {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} #143#return; {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,140 INFO L290 TraceCheckUtils]: 22: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume { :end_inline_insert_sub } true; {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,141 INFO L290 TraceCheckUtils]: 23: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,141 INFO L290 TraceCheckUtils]: 24: Hoare triple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} assume true; {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} is VALID [2022-02-20 23:44:58,143 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {6390#(exists ((|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (exists ((v_ArrVal_448 (_ BitVec 32))) (= |#length| (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_448))) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1))))} {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} #145#return; {6442#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:44:58,143 INFO L272 TraceCheckUtils]: 26: Hoare triple {6442#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {6446#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:44:58,144 INFO L290 TraceCheckUtils]: 27: Hoare triple {6446#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6450#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:44:58,144 INFO L290 TraceCheckUtils]: 28: Hoare triple {6450#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {6360#false} is VALID [2022-02-20 23:44:58,145 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:58,145 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:00,524 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:00,524 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1058145881] [2022-02-20 23:45:00,524 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1058145881] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:00,524 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [1362364800] [2022-02-20 23:45:00,524 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:00,524 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2022-02-20 23:45:00,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2022-02-20 23:45:00,526 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2022-02-20 23:45:00,529 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Waiting until timeout for monitored process [2022-02-20 23:45:00,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:00,828 INFO L263 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 35 conjunts are in the unsatisfiable core [2022-02-20 23:45:00,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:00,850 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:00,863 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:45:00,868 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:45:01,094 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:45:01,436 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:01,437 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:45:01,445 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:01,446 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 12 [2022-02-20 23:45:01,508 INFO L290 TraceCheckUtils]: 0: Hoare triple {6359#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(14bv32, 2bv32); {6359#true} is VALID [2022-02-20 23:45:01,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {6359#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {6359#true} is VALID [2022-02-20 23:45:01,513 INFO L290 TraceCheckUtils]: 2: Hoare triple {6359#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:01,513 INFO L290 TraceCheckUtils]: 3: Hoare triple {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:01,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} is VALID [2022-02-20 23:45:01,515 INFO L290 TraceCheckUtils]: 5: Hoare triple {6377#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:01,515 INFO L290 TraceCheckUtils]: 6: Hoare triple {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:01,516 INFO L290 TraceCheckUtils]: 7: Hoare triple {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:01,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {6485#(and (= |old(#valid)| |#valid|) (= |#length| |old(#length)|) (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:01,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:01,520 INFO L290 TraceCheckUtils]: 10: Hoare triple {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:01,520 INFO L272 TraceCheckUtils]: 11: Hoare triple {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {6359#true} is VALID [2022-02-20 23:45:01,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {6359#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {6508#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:01,521 INFO L290 TraceCheckUtils]: 13: Hoare triple {6508#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {6508#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:01,522 INFO L290 TraceCheckUtils]: 14: Hoare triple {6508#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {6515#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|))} is VALID [2022-02-20 23:45:01,522 INFO L290 TraceCheckUtils]: 15: Hoare triple {6515#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,523 INFO L290 TraceCheckUtils]: 16: Hoare triple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,523 INFO L290 TraceCheckUtils]: 17: Hoare triple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,524 INFO L290 TraceCheckUtils]: 18: Hoare triple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,527 INFO L290 TraceCheckUtils]: 19: Hoare triple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} assume true; {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} is VALID [2022-02-20 23:45:01,529 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6519#(bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|))} {6495#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|) (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))))} #143#return; {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:01,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume { :end_inline_insert_sub } true; {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:01,530 INFO L290 TraceCheckUtils]: 23: Hoare triple {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:01,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume true; {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:01,532 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {6538#(and (exists ((v_ArrVal_511 (_ BitVec 32)) (|create_sub_list_insert_sub_~sub~0#1.base| (_ BitVec 32))) (and (= (store |old(#length)| |create_sub_list_insert_sub_~sub~0#1.base| v_ArrVal_511) |#length|) (= (bvneg (select |old(#valid)| |create_sub_list_insert_sub_~sub~0#1.base|)) (_ bv0 1)))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} {6370#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} #145#return; {6442#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:01,532 INFO L272 TraceCheckUtils]: 26: Hoare triple {6442#(and (= (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv24 32)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {6446#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:01,533 INFO L290 TraceCheckUtils]: 27: Hoare triple {6446#(and (= (select |#length| |create_sub_list_#in~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_#in~sub#1.offset|))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {6450#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:01,533 INFO L290 TraceCheckUtils]: 28: Hoare triple {6450#(and (= (select |#length| |create_sub_list_~sub#1.base|) (_ bv24 32)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)), #length[~sub#1.base]) && ~bvule32(~bvadd32(4bv32, ~sub#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~sub#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~sub#1.offset))); {6360#false} is VALID [2022-02-20 23:45:01,533 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:01,534 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:02,292 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [1362364800] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:02,292 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:02,292 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 12] total 13 [2022-02-20 23:45:02,292 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [894952696] [2022-02-20 23:45:02,292 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:02,293 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 23:45:02,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:02,293 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:02,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:02,388 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:45:02,388 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:02,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:45:02,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=295, Unknown=1, NotChecked=0, Total=342 [2022-02-20 23:45:02,388 INFO L87 Difference]: Start difference. First operand 135 states and 150 transitions. Second operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:14,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,787 INFO L93 Difference]: Finished difference Result 163 states and 184 transitions. [2022-02-20 23:45:14,787 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:45:14,787 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-02-20 23:45:14,787 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:14,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:14,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 122 transitions. [2022-02-20 23:45:14,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:14,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 122 transitions. [2022-02-20 23:45:14,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 122 transitions. [2022-02-20 23:45:14,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:14,945 INFO L225 Difference]: With dead ends: 163 [2022-02-20 23:45:14,945 INFO L226 Difference]: Without dead ends: 163 [2022-02-20 23:45:14,945 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 47 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 13.0s TimeCoverageRelationStatistics Valid=78, Invalid=468, Unknown=6, NotChecked=0, Total=552 [2022-02-20 23:45:14,946 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 79 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 458 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 305 SdHoareTripleChecker+Invalid, 563 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 458 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 95 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:14,946 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [79 Valid, 305 Invalid, 563 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 458 Invalid, 0 Unknown, 95 Unchecked, 0.9s Time] [2022-02-20 23:45:14,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 163 states. [2022-02-20 23:45:14,948 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 163 to 143. [2022-02-20 23:45:14,948 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:14,949 INFO L82 GeneralOperation]: Start isEquivalent. First operand 163 states. Second operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:14,949 INFO L74 IsIncluded]: Start isIncluded. First operand 163 states. Second operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:14,949 INFO L87 Difference]: Start difference. First operand 163 states. Second operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:14,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,951 INFO L93 Difference]: Finished difference Result 163 states and 184 transitions. [2022-02-20 23:45:14,952 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 184 transitions. [2022-02-20 23:45:14,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:14,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:14,952 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Second operand 163 states. [2022-02-20 23:45:14,953 INFO L87 Difference]: Start difference. First operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Second operand 163 states. [2022-02-20 23:45:14,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:14,955 INFO L93 Difference]: Finished difference Result 163 states and 184 transitions. [2022-02-20 23:45:14,955 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 184 transitions. [2022-02-20 23:45:14,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:14,955 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:14,955 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:14,956 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:14,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 100 states have (on average 1.39) internal successors, (139), 124 states have internal predecessors, (139), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:14,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 160 transitions. [2022-02-20 23:45:14,958 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 160 transitions. Word has length 29 [2022-02-20 23:45:14,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:14,958 INFO L470 AbstractCegarLoop]: Abstraction has 143 states and 160 transitions. [2022-02-20 23:45:14,958 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 12 states have (on average 3.5) internal successors, (42), 12 states have internal predecessors, (42), 4 states have call successors, (4), 3 states have call predecessors, (4), 4 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 23:45:14,958 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-02-20 23:45:14,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:45:14,959 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:14,959 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:14,964 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:15,176 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:15,362 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:15,363 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting list_add_tailErr1REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:45:15,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:15,363 INFO L85 PathProgramCache]: Analyzing trace with hash 343570640, now seen corresponding path program 1 times [2022-02-20 23:45:15,364 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:15,364 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [891052829] [2022-02-20 23:45:15,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:15,364 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:15,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:15,369 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:45:15,370 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Waiting until timeout for monitored process [2022-02-20 23:45:15,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:15,591 INFO L263 TraceCheckSpWp]: Trace formula consists of 299 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:45:15,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:15,606 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:16,100 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:16,101 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 14 treesize of output 16 [2022-02-20 23:45:16,111 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:45:16,111 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 15 treesize of output 15 [2022-02-20 23:45:16,222 INFO L290 TraceCheckUtils]: 0: Hoare triple {7216#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(14bv32, 2bv32); {7216#true} is VALID [2022-02-20 23:45:16,222 INFO L290 TraceCheckUtils]: 1: Hoare triple {7216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {7216#true} is VALID [2022-02-20 23:45:16,223 INFO L290 TraceCheckUtils]: 2: Hoare triple {7216#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {7227#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:16,223 INFO L290 TraceCheckUtils]: 3: Hoare triple {7227#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {7227#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:45:16,223 INFO L272 TraceCheckUtils]: 4: Hoare triple {7227#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {7216#true} is VALID [2022-02-20 23:45:16,224 INFO L290 TraceCheckUtils]: 5: Hoare triple {7216#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:16,224 INFO L290 TraceCheckUtils]: 6: Hoare triple {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:16,225 INFO L290 TraceCheckUtils]: 7: Hoare triple {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:16,225 INFO L290 TraceCheckUtils]: 8: Hoare triple {7237#(and (= |create_sub_list_#in~sub#1.offset| |create_sub_list_~sub#1.offset|) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:16,225 INFO L290 TraceCheckUtils]: 9: Hoare triple {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:16,226 INFO L290 TraceCheckUtils]: 10: Hoare triple {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} is VALID [2022-02-20 23:45:16,226 INFO L272 TraceCheckUtils]: 11: Hoare triple {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7216#true} is VALID [2022-02-20 23:45:16,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {7216#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7260#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} is VALID [2022-02-20 23:45:16,227 INFO L290 TraceCheckUtils]: 13: Hoare triple {7260#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|))} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {7264#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|) (= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:16,228 INFO L290 TraceCheckUtils]: 14: Hoare triple {7264#(and (= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail_~head#1.offset|) (= (_ bv1 1) (select |#valid| |list_add_tail_~head#1.base|)))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {7268#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|) (= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:45:16,229 INFO L290 TraceCheckUtils]: 15: Hoare triple {7268#(and (= |list_add_tail_#in~head#1.base| |list_add_tail___list_add_~next#1.base|) (= |list_add_tail_#in~head#1.offset| |list_add_tail___list_add_~next#1.offset|) (= (select |#valid| |list_add_tail___list_add_~next#1.base|) (_ bv1 1)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,230 INFO L290 TraceCheckUtils]: 16: Hoare triple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,231 INFO L290 TraceCheckUtils]: 17: Hoare triple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,233 INFO L290 TraceCheckUtils]: 19: Hoare triple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,234 INFO L290 TraceCheckUtils]: 20: Hoare triple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} assume true; {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} is VALID [2022-02-20 23:45:16,235 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7272#(and (= (select |#valid| |list_add_tail_#in~head#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)))} {7247#(and (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (= |create_sub_list_insert_sub_~head#1.offset| |create_sub_list_#in~sub#1.offset|))} #143#return; {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:16,235 INFO L290 TraceCheckUtils]: 22: Hoare triple {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume { :end_inline_insert_sub } true; {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:16,236 INFO L290 TraceCheckUtils]: 23: Hoare triple {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:16,238 INFO L290 TraceCheckUtils]: 24: Hoare triple {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} assume true; {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} is VALID [2022-02-20 23:45:16,239 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {7291#(and (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|)))} {7227#(= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32))} #145#return; {7304#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv16 32) |ULTIMATE.start_insert_top_~top~0#1.offset|) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:45:16,240 INFO L272 TraceCheckUtils]: 26: Hoare triple {7304#(and (= (select |#valid| |ULTIMATE.start_insert_top_~top~0#1.base|) (_ bv1 1)) (bvule (bvadd (_ bv16 32) |ULTIMATE.start_insert_top_~top~0#1.offset|) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|)) (= |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv0 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {7308#(and (bvule |create_sub_list_#in~sub#1.offset| (select |#length| |create_sub_list_#in~sub#1.base|)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd (_ bv4294967280 32) |create_sub_list_#in~sub#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:45:16,240 INFO L290 TraceCheckUtils]: 27: Hoare triple {7308#(and (bvule |create_sub_list_#in~sub#1.offset| (select |#length| |create_sub_list_#in~sub#1.base|)) (= (_ bv1 1) (select |#valid| |create_sub_list_#in~sub#1.base|)) (= (bvadd (_ bv4294967280 32) |create_sub_list_#in~sub#1.offset|) (_ bv0 32)))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7312#(and (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)) (= (bvadd (_ bv4294967280 32) |create_sub_list_~sub#1.offset|) (_ bv0 32)) (bvule |create_sub_list_~sub#1.offset| (select |#length| |create_sub_list_~sub#1.base|)))} is VALID [2022-02-20 23:45:16,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {7312#(and (= (select |#valid| |create_sub_list_~sub#1.base|) (_ bv1 1)) (= (bvadd (_ bv4294967280 32) |create_sub_list_~sub#1.offset|) (_ bv0 32)) (bvule |create_sub_list_~sub#1.offset| (select |#length| |create_sub_list_~sub#1.base|)))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {7316#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:16,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {7316#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {7316#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} is VALID [2022-02-20 23:45:16,243 INFO L290 TraceCheckUtils]: 30: Hoare triple {7316#(and (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|)) (= (bvadd (bvneg (select |#valid| |create_sub_list_~sub#1.base|)) (_ bv1 1)) (_ bv0 1)) (= (_ bv16 32) |create_sub_list_~sub#1.offset|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:16,243 INFO L290 TraceCheckUtils]: 31: Hoare triple {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:16,244 INFO L290 TraceCheckUtils]: 32: Hoare triple {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} is VALID [2022-02-20 23:45:16,245 INFO L272 TraceCheckUtils]: 33: Hoare triple {7323#(and (= |create_sub_list_insert_sub_~head#1.offset| (_ bv16 32)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7333#(and (bvule (_ bv24 32) (select |#length| |list_add_tail_#in~head#1.base|)) (= (_ bv16 32) |list_add_tail_#in~head#1.offset|))} is VALID [2022-02-20 23:45:16,250 INFO L290 TraceCheckUtils]: 34: Hoare triple {7333#(and (bvule (_ bv24 32) (select |#length| |list_add_tail_#in~head#1.base|)) (= (_ bv16 32) |list_add_tail_#in~head#1.offset|))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7337#(and (= (_ bv16 32) |list_add_tail_~head#1.offset|) (bvule (_ bv24 32) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:16,251 INFO L290 TraceCheckUtils]: 35: Hoare triple {7337#(and (= (_ bv16 32) |list_add_tail_~head#1.offset|) (bvule (_ bv24 32) (select |#length| |list_add_tail_~head#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {7217#false} is VALID [2022-02-20 23:45:16,251 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:16,251 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:17,400 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:45:17,403 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 32 treesize of output 26 [2022-02-20 23:45:17,988 INFO L356 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2022-02-20 23:45:17,989 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 38 treesize of output 32 [2022-02-20 23:45:18,004 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:45:18,004 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 19 treesize of output 18 [2022-02-20 23:45:18,769 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:45:18,770 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 38 treesize of output 40 [2022-02-20 23:45:18,884 INFO L356 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2022-02-20 23:45:18,884 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 16 treesize of output 15 [2022-02-20 23:45:19,079 INFO L290 TraceCheckUtils]: 35: Hoare triple {7341#(and (bvule (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|)) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)), #length[~head#1.base]) && ~bvule32(~bvadd32(4bv32, ~head#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, ~head#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, ~head#1.offset))); {7217#false} is VALID [2022-02-20 23:45:19,080 INFO L290 TraceCheckUtils]: 34: Hoare triple {7345#(and (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)) (bvule (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|)))} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7341#(and (bvule (bvadd (_ bv4 32) |list_add_tail_~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|)) (bvule (bvadd (_ bv8 32) |list_add_tail_~head#1.offset|) (select |#length| |list_add_tail_~head#1.base|)))} is VALID [2022-02-20 23:45:19,081 INFO L272 TraceCheckUtils]: 33: Hoare triple {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7345#(and (bvule (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|) (select |#length| |list_add_tail_#in~head#1.base|)) (bvule (bvadd (_ bv4 32) |list_add_tail_#in~head#1.offset|) (bvadd (_ bv8 32) |list_add_tail_#in~head#1.offset|)))} is VALID [2022-02-20 23:45:19,082 INFO L290 TraceCheckUtils]: 32: Hoare triple {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:19,082 INFO L290 TraceCheckUtils]: 31: Hoare triple {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:19,091 INFO L290 TraceCheckUtils]: 30: Hoare triple {7359#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7349#(and (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_insert_sub_~head#1.base|)) (bvule (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv4 32)) (bvadd |create_sub_list_insert_sub_~head#1.offset| (_ bv8 32))))} is VALID [2022-02-20 23:45:19,093 INFO L290 TraceCheckUtils]: 29: Hoare triple {7359#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {7359#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:19,094 INFO L290 TraceCheckUtils]: 28: Hoare triple {7366#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|))))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {7359#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1)))))} is VALID [2022-02-20 23:45:19,094 INFO L290 TraceCheckUtils]: 27: Hoare triple {7370#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|))) (bvule (bvadd (_ bv4 32) |create_sub_list_#in~sub#1.offset|) (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|))))} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7366#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd (_ bv4 32) |create_sub_list_~sub#1.offset|) (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|)) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_~sub#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd (_ bv8 32) |create_sub_list_~sub#1.offset|) (select |#length| |create_sub_list_~sub#1.base|))))} is VALID [2022-02-20 23:45:19,169 INFO L272 TraceCheckUtils]: 26: Hoare triple {7374#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32))) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |ULTIMATE.start_insert_top_~top~0#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|))))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(16bv32, insert_top_~top~0#1.offset)); {7370#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|))) (bvule (bvadd (_ bv4 32) |create_sub_list_#in~sub#1.offset|) (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv8 32)) (select |#length| |create_sub_list_#in~sub#1.base|))))} is VALID [2022-02-20 23:45:19,231 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} {7378#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} #145#return; {7374#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32))) (or (and (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32))) (forall ((v_ArrVal_601 (_ BitVec 32))) (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |ULTIMATE.start_insert_top_~top~0#1.base|)))) (not (= (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|)) (_ bv0 1))))) (not (bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)) (select |#length| |ULTIMATE.start_insert_top_~top~0#1.base|))))} is VALID [2022-02-20 23:45:19,232 INFO L290 TraceCheckUtils]: 24: Hoare triple {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume true; {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,232 INFO L290 TraceCheckUtils]: 23: Hoare triple {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume !(0bv32 != #t~nondet9#1);havoc #t~nondet9#1; {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,233 INFO L290 TraceCheckUtils]: 22: Hoare triple {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume { :end_inline_insert_sub } true; {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,263 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} #143#return; {7382#(or (forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |create_sub_list_#in~sub#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))))) (not (bvule (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|) (select |#length| |create_sub_list_#in~sub#1.base|))) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,265 INFO L290 TraceCheckUtils]: 20: Hoare triple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} assume true; {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,266 INFO L290 TraceCheckUtils]: 19: Hoare triple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} assume { :end_inline___list_add } true;havoc #t~mem3#1.base, #t~mem3#1.offset; {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,267 INFO L290 TraceCheckUtils]: 18: Hoare triple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, 4bv32); srcloc: L533 {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,267 INFO L290 TraceCheckUtils]: 17: Hoare triple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~new#1.base, ~bvadd32(4bv32, __list_add_~new#1.offset), 4bv32); srcloc: L532 {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} SUMMARY for call write~$Pointer$(__list_add_~next#1.base, __list_add_~next#1.offset, __list_add_~new#1.base, __list_add_~new#1.offset, 4bv32); srcloc: L531-1 {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,292 INFO L290 TraceCheckUtils]: 15: Hoare triple {7418#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} SUMMARY for call write~$Pointer$(__list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~next#1.base, ~bvadd32(4bv32, __list_add_~next#1.offset), 4bv32); srcloc: L531 {7399#(forall ((|v_create_sub_list_insert_sub_~sub~0#1.base_16| (_ BitVec 32)) (|v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ BitVec 32)) (v_ArrVal_601 (_ BitVec 32))) (or (not (bvule (bvadd |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3| (_ bv12 32)) (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|))) (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select (store |#length| |v_create_sub_list_insert_sub_~sub~0#1.base_16| v_ArrVal_601) |list_add_tail_#in~head#1.base|)) (not (= (bvneg (bvneg (select |#valid| |v_create_sub_list_insert_sub_~sub~0#1.base_16|))) (_ bv0 1))) (not (bvule (bvadd (_ bv16 32) |v_create_sub_list_#in~sub#1.offset_BEFORE_CALL_3|) (select |#length| |list_add_tail_#in~head#1.base|)))))} is VALID [2022-02-20 23:45:19,293 INFO L290 TraceCheckUtils]: 14: Hoare triple {7418#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} assume { :begin_inline___list_add } true;__list_add_#in~new#1.base, __list_add_#in~new#1.offset, __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset, __list_add_#in~next#1.base, __list_add_#in~next#1.offset := ~new#1.base, ~new#1.offset, #t~mem3#1.base, #t~mem3#1.offset, ~head#1.base, ~head#1.offset;havoc __list_add_~new#1.base, __list_add_~new#1.offset, __list_add_~prev#1.base, __list_add_~prev#1.offset, __list_add_~next#1.base, __list_add_~next#1.offset;__list_add_~new#1.base, __list_add_~new#1.offset := __list_add_#in~new#1.base, __list_add_#in~new#1.offset;__list_add_~prev#1.base, __list_add_~prev#1.offset := __list_add_#in~prev#1.base, __list_add_#in~prev#1.offset;__list_add_~next#1.base, __list_add_~next#1.offset := __list_add_#in~next#1.base, __list_add_#in~next#1.offset; {7418#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} is VALID [2022-02-20 23:45:19,294 INFO L290 TraceCheckUtils]: 13: Hoare triple {7425#(= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|)} SUMMARY for call #t~mem3#1.base, #t~mem3#1.offset := read~$Pointer$(~head#1.base, ~bvadd32(4bv32, ~head#1.offset), 4bv32); srcloc: L538 {7418#(not (= (_ bv0 1) (bvneg (bvneg (bvneg (select |#valid| |list_add_tail_#in~head#1.base|))))))} is VALID [2022-02-20 23:45:19,294 INFO L290 TraceCheckUtils]: 12: Hoare triple {7216#true} ~new#1.base, ~new#1.offset := #in~new#1.base, #in~new#1.offset;~head#1.base, ~head#1.offset := #in~head#1.base, #in~head#1.offset; {7425#(= |list_add_tail_#in~head#1.base| |list_add_tail_~head#1.base|)} is VALID [2022-02-20 23:45:19,294 INFO L272 TraceCheckUtils]: 11: Hoare triple {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} call list_add_tail(insert_sub_~sub~0#1.base, ~bvadd32(4bv32, insert_sub_~sub~0#1.offset), insert_sub_~head#1.base, insert_sub_~head#1.offset); {7216#true} is VALID [2022-02-20 23:45:19,295 INFO L290 TraceCheckUtils]: 10: Hoare triple {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} SUMMARY for call write~intINTTYPE4(0bv32, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset, 4bv32); srcloc: L572-2 {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,295 INFO L290 TraceCheckUtils]: 9: Hoare triple {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} assume !(insert_sub_~sub~0#1.base == 0bv32 && insert_sub_~sub~0#1.offset == 0bv32); {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,296 INFO L290 TraceCheckUtils]: 8: Hoare triple {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} assume { :begin_inline_insert_sub } true;insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset := ~sub#1.base, ~sub#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset, insert_sub_~head#1.base, insert_sub_~head#1.offset, insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset;insert_sub_~head#1.base, insert_sub_~head#1.offset := insert_sub_#in~head#1.base, insert_sub_#in~head#1.offset;call insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32);insert_sub_~sub~0#1.base, insert_sub_~sub~0#1.offset := insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset;havoc insert_sub_#t~malloc8#1.base, insert_sub_#t~malloc8#1.offset; {7395#(or (= |create_sub_list_insert_sub_~head#1.base| |create_sub_list_#in~sub#1.base|) (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))))} is VALID [2022-02-20 23:45:19,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~sub#1.offset, 4bv32); srcloc: L579-1 {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:19,297 INFO L290 TraceCheckUtils]: 6: Hoare triple {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} SUMMARY for call write~$Pointer$(~sub#1.base, ~sub#1.offset, ~sub#1.base, ~bvadd32(4bv32, ~sub#1.offset), 4bv32); srcloc: L579 {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:19,298 INFO L290 TraceCheckUtils]: 5: Hoare triple {7216#true} ~sub#1.base, ~sub#1.offset := #in~sub#1.base, #in~sub#1.offset; {7438#(or (not (bvule (bvadd |create_sub_list_#in~sub#1.offset| (_ bv12 32)) (bvadd (_ bv16 32) |create_sub_list_#in~sub#1.offset|))) (= |create_sub_list_#in~sub#1.base| |create_sub_list_~sub#1.base|))} is VALID [2022-02-20 23:45:19,298 INFO L272 TraceCheckUtils]: 4: Hoare triple {7378#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} call create_sub_list(insert_top_~top~0#1.base, ~bvadd32(8bv32, insert_top_~top~0#1.offset)); {7216#true} is VALID [2022-02-20 23:45:19,298 INFO L290 TraceCheckUtils]: 3: Hoare triple {7378#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} assume !(insert_top_~top~0#1.base == 0bv32 && insert_top_~top~0#1.offset == 0bv32); {7378#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} is VALID [2022-02-20 23:45:19,299 INFO L290 TraceCheckUtils]: 2: Hoare triple {7216#true} assume { :begin_inline_insert_top } true;insert_top_#in~head#1.base, insert_top_#in~head#1.offset := create_top_~top#1.base, create_top_~top#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset, insert_top_~head#1.base, insert_top_~head#1.offset, insert_top_~top~0#1.base, insert_top_~top~0#1.offset;insert_top_~head#1.base, insert_top_~head#1.offset := insert_top_#in~head#1.base, insert_top_#in~head#1.offset;call insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset := #Ultimate.allocOnHeap(24bv32);insert_top_~top~0#1.base, insert_top_~top~0#1.offset := insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset;havoc insert_top_#t~malloc10#1.base, insert_top_#t~malloc10#1.offset; {7378#(bvule (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv20 32)) (bvadd |ULTIMATE.start_insert_top_~top~0#1.offset| (_ bv24 32)))} is VALID [2022-02-20 23:45:19,299 INFO L290 TraceCheckUtils]: 1: Hoare triple {7216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_~#top~1#1.base, main_~#top~1#1.offset;call main_~#top~1#1.base, main_~#top~1#1.offset := #Ultimate.allocOnStack(8bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, main_~#top~1#1.offset, 4bv32);call write~init~$Pointer$(main_~#top~1#1.base, main_~#top~1#1.offset, main_~#top~1#1.base, ~bvadd32(4bv32, main_~#top~1#1.offset), 4bv32);assume { :begin_inline_create_top } true;create_top_#in~top#1.base, create_top_#in~top#1.offset := main_~#top~1#1.base, main_~#top~1#1.offset;havoc create_top_#t~nondet11#1, create_top_~top#1.base, create_top_~top#1.offset;create_top_~top#1.base, create_top_~top#1.offset := create_top_#in~top#1.base, create_top_#in~top#1.offset; {7216#true} is VALID [2022-02-20 23:45:19,299 INFO L290 TraceCheckUtils]: 0: Hoare triple {7216#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(14bv32, 2bv32); {7216#true} is VALID [2022-02-20 23:45:19,299 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 2 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:45:19,299 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:19,299 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [891052829] [2022-02-20 23:45:19,299 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [891052829] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:19,300 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:45:19,300 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 30 [2022-02-20 23:45:19,300 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [775116000] [2022-02-20 23:45:19,300 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:19,300 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 36 [2022-02-20 23:45:19,301 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:19,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:19,989 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:19,989 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:45:19,989 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:45:19,989 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:45:19,990 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=844, Unknown=0, NotChecked=0, Total=930 [2022-02-20 23:45:19,990 INFO L87 Difference]: Start difference. First operand 143 states and 160 transitions. Second operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:28,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,005 INFO L93 Difference]: Finished difference Result 151 states and 164 transitions. [2022-02-20 23:45:28,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-02-20 23:45:28,006 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Word has length 36 [2022-02-20 23:45:28,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:28,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:28,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 128 transitions. [2022-02-20 23:45:28,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:28,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 128 transitions. [2022-02-20 23:45:28,011 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 128 transitions. [2022-02-20 23:45:28,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:28,240 INFO L225 Difference]: With dead ends: 151 [2022-02-20 23:45:28,240 INFO L226 Difference]: Without dead ends: 151 [2022-02-20 23:45:28,240 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 41 SyntacticMatches, 2 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 253 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=231, Invalid=1575, Unknown=0, NotChecked=0, Total=1806 [2022-02-20 23:45:28,241 INFO L933 BasicCegarLoop]: 63 mSDtfsCounter, 208 mSDsluCounter, 851 mSDsCounter, 0 mSdLazyCounter, 797 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 211 SdHoareTripleChecker+Valid, 914 SdHoareTripleChecker+Invalid, 1093 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 797 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 263 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:28,241 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [211 Valid, 914 Invalid, 1093 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 797 Invalid, 0 Unknown, 263 Unchecked, 2.4s Time] [2022-02-20 23:45:28,241 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states. [2022-02-20 23:45:28,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 140. [2022-02-20 23:45:28,243 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:28,243 INFO L82 GeneralOperation]: Start isEquivalent. First operand 151 states. Second operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:28,243 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:28,244 INFO L87 Difference]: Start difference. First operand 151 states. Second operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:28,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,245 INFO L93 Difference]: Finished difference Result 151 states and 164 transitions. [2022-02-20 23:45:28,245 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 164 transitions. [2022-02-20 23:45:28,246 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:28,246 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:28,246 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Second operand 151 states. [2022-02-20 23:45:28,246 INFO L87 Difference]: Start difference. First operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Second operand 151 states. [2022-02-20 23:45:28,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:28,251 INFO L93 Difference]: Finished difference Result 151 states and 164 transitions. [2022-02-20 23:45:28,251 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 164 transitions. [2022-02-20 23:45:28,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:28,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:28,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:28,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:28,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 99 states have (on average 1.3333333333333333) internal successors, (132), 121 states have internal predecessors, (132), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-02-20 23:45:28,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 153 transitions. [2022-02-20 23:45:28,253 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 153 transitions. Word has length 36 [2022-02-20 23:45:28,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:28,254 INFO L470 AbstractCegarLoop]: Abstraction has 140 states and 153 transitions. [2022-02-20 23:45:28,254 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 28 states have (on average 2.0714285714285716) internal successors, (58), 25 states have internal predecessors, (58), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-02-20 23:45:28,254 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 153 transitions. [2022-02-20 23:45:28,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:45:28,255 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:28,255 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:28,265 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:28,464 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:28,465 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting list_add_tailErr8REQUIRES_VIOLATION === [create_sub_listErr0REQUIRES_VIOLATION, create_sub_listErr1REQUIRES_VIOLATION, create_sub_listErr2REQUIRES_VIOLATION, create_sub_listErr3REQUIRES_VIOLATION (and 27 more)] === [2022-02-20 23:45:28,465 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:28,465 INFO L85 PathProgramCache]: Analyzing trace with hash 2012582842, now seen corresponding path program 1 times [2022-02-20 23:45:28,466 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:45:28,466 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1720602099] [2022-02-20 23:45:28,467 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:28,467 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:45:28,467 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:45:28,468 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:45:28,480 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Waiting until timeout for monitored process [2022-02-20 23:45:28,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:28,846 INFO L263 TraceCheckSpWp]: Trace formula consists of 314 conjuncts, 76 conjunts are in the unsatisfiable core [2022-02-20 23:45:28,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:28,869 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:28,878 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:45:28,948 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:45:28,952 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:45:29,000 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:29,001 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 21 treesize of output 20 [2022-02-20 23:45:29,011 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:45:29,012 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 21 treesize of output 20 [2022-02-20 23:45:29,078 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:45:29,078 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 18 treesize of output 25 [2022-02-20 23:45:29,181 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:45:29,199 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:45:29,260 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 7 treesize of output 3 [2022-02-20 23:45:29,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 7 treesize of output 3 [2022-02-20 23:45:30,751 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 2 new quantified variables, introduced 0 case distinctions, treesize of input 65 treesize of output 36 [2022-02-20 23:45:30,763 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:45:30,763 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1720602099] [2022-02-20 23:45:30,763 WARN L325 FreeRefinementEngine]: Global settings require throwing the following exception [2022-02-20 23:45:30,774 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Ended with exit code 0 [2022-02-20 23:45:30,972 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:45:30,973 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: var is still there: v_arrayElimArr_1 at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1(Elim1Store.java:285) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.ElimStorePlain.applyComplexEliminationRules(ElimStorePlain.java:427) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:184) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne3(DualJunctionSaa.java:166) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne2(DualJunctionSaa.java:154) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne1(DualJunctionSaa.java:142) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne0(DualJunctionSaa.java:126) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne(DualJunctionSaa.java:110) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryExhaustivelyToEliminate(DualJunctionSaa.java:95) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:90) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToEliminateOne(QuantifierPusher.java:904) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyNewEliminationTechniquesExhaustively(QuantifierPusher.java:865) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyDualJunctionEliminationTechniques(QuantifierPusher.java:783) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective2(QuantifierPusher.java:425) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:355) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:172) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine$ApplicationTermTask.doStep(TermContextTransformationEngine.java:169) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:77) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:61) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:261) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:247) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.PartialQuantifierElimination.eliminate(PartialQuantifierElimination.java:92) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:238) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:199) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:299) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:185) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:163) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:108) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:100) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:216) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:129) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:93) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:79) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:610) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:413) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:330) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:414) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:304) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:264) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:177) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 23:45:30,976 INFO L158 Benchmark]: Toolchain (without parser) took 53956.35ms. Allocated memory was 56.6MB in the beginning and 92.3MB in the end (delta: 35.7MB). Free memory was 32.8MB in the beginning and 67.5MB in the end (delta: -34.7MB). Peak memory consumption was 49.3MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,977 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 56.6MB. Free memory was 37.8MB in the beginning and 37.7MB in the end (delta: 45.9kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:45:30,977 INFO L158 Benchmark]: CACSL2BoogieTranslator took 538.38ms. Allocated memory was 56.6MB in the beginning and 75.5MB in the end (delta: 18.9MB). Free memory was 32.7MB in the beginning and 44.5MB in the end (delta: -11.9MB). Peak memory consumption was 7.8MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,977 INFO L158 Benchmark]: Boogie Procedure Inliner took 60.39ms. Allocated memory is still 75.5MB. Free memory was 44.5MB in the beginning and 42.0MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,977 INFO L158 Benchmark]: Boogie Preprocessor took 54.42ms. Allocated memory is still 75.5MB. Free memory was 42.0MB in the beginning and 56.4MB in the end (delta: -14.5MB). Peak memory consumption was 5.9MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,978 INFO L158 Benchmark]: RCFGBuilder took 507.91ms. Allocated memory is still 75.5MB. Free memory was 56.4MB in the beginning and 54.2MB in the end (delta: 2.2MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,978 INFO L158 Benchmark]: TraceAbstraction took 52790.59ms. Allocated memory was 75.5MB in the beginning and 92.3MB in the end (delta: 16.8MB). Free memory was 53.8MB in the beginning and 67.5MB in the end (delta: -13.7MB). Peak memory consumption was 49.6MB. Max. memory is 16.1GB. [2022-02-20 23:45:30,979 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.19ms. Allocated memory is still 56.6MB. Free memory was 37.8MB in the beginning and 37.7MB in the end (delta: 45.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 538.38ms. Allocated memory was 56.6MB in the beginning and 75.5MB in the end (delta: 18.9MB). Free memory was 32.7MB in the beginning and 44.5MB in the end (delta: -11.9MB). Peak memory consumption was 7.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 60.39ms. Allocated memory is still 75.5MB. Free memory was 44.5MB in the beginning and 42.0MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 54.42ms. Allocated memory is still 75.5MB. Free memory was 42.0MB in the beginning and 56.4MB in the end (delta: -14.5MB). Peak memory consumption was 5.9MB. Max. memory is 16.1GB. * RCFGBuilder took 507.91ms. Allocated memory is still 75.5MB. Free memory was 56.4MB in the beginning and 54.2MB in the end (delta: 2.2MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. * TraceAbstraction took 52790.59ms. Allocated memory was 75.5MB in the beginning and 92.3MB in the end (delta: 16.8MB). Free memory was 53.8MB in the beginning and 67.5MB in the end (delta: -13.7MB). Peak memory consumption was 49.6MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: var is still there: v_arrayElimArr_1 de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: var is still there: v_arrayElimArr_1: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1(Elim1Store.java:285) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 23:45:31,009 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: AssertionError: var is still there: v_arrayElimArr_1