./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/forester-heap/dll-rb-sentinel-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/forester-heap/dll-rb-sentinel-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 503e46fe74670dc8b1fd2e8b2c5a408fc01c83cb421ff9aefb8796417315d291 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:53:54,662 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:53:54,663 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:53:54,682 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:53:54,686 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:53:54,687 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:53:54,687 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:53:54,689 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:53:54,690 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:53:54,693 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:53:54,693 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:53:54,694 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:53:54,695 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:53:54,697 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:53:54,698 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:53:54,699 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:53:54,700 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:53:54,701 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:53:54,704 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:53:54,705 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:53:54,708 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:53:54,708 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:53:54,709 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:53:54,711 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:53:54,712 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:53:54,715 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:53:54,715 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:53:54,716 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:53:54,716 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:53:54,717 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:53:54,717 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:53:54,718 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:53:54,719 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:53:54,719 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:53:54,720 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:53:54,720 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:53:54,721 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:53:54,722 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:53:54,722 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:53:54,722 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:53:54,725 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:53:54,725 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:53:54,740 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:53:54,743 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:53:54,743 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:53:54,744 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:53:54,744 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:53:54,744 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:53:54,745 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:53:54,745 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:53:54,745 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:53:54,745 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:53:54,746 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:53:54,746 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:53:54,746 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:53:54,746 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:53:54,747 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:53:54,748 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:53:54,748 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:53:54,748 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:53:54,748 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:53:54,748 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:53:54,748 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:53:54,749 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:53:54,750 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:53:54,750 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:53:54,750 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 -> 503e46fe74670dc8b1fd2e8b2c5a408fc01c83cb421ff9aefb8796417315d291 [2022-02-20 23:53:54,928 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:53:54,946 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:53:54,949 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:53:54,950 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:53:54,951 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:53:54,952 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i [2022-02-20 23:53:54,991 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50d29d864/ea1df0ff83e24705a443b82c14356734/FLAGb17425739 [2022-02-20 23:53:55,335 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:53:55,336 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i [2022-02-20 23:53:55,354 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50d29d864/ea1df0ff83e24705a443b82c14356734/FLAGb17425739 [2022-02-20 23:53:55,728 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50d29d864/ea1df0ff83e24705a443b82c14356734 [2022-02-20 23:53:55,731 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:53:55,734 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:53:55,736 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:53:55,736 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:53:55,738 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:53:55,739 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:53:55" (1/1) ... [2022-02-20 23:53:55,740 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@45a29ffa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:55, skipping insertion in model container [2022-02-20 23:53:55,740 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:53:55" (1/1) ... [2022-02-20 23:53:55,744 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:53:55,780 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:53:56,000 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22665,22678] [2022-02-20 23:53:56,005 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22735,22748] [2022-02-20 23:53:56,006 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22799,22812] [2022-02-20 23:53:56,009 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22894,22907] [2022-02-20 23:53:56,012 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22966,22979] [2022-02-20 23:53:56,014 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23105,23118] [2022-02-20 23:53:56,015 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23179,23192] [2022-02-20 23:53:56,024 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:53:56,033 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:53:56,078 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22665,22678] [2022-02-20 23:53:56,079 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22735,22748] [2022-02-20 23:53:56,079 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22799,22812] [2022-02-20 23:53:56,080 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22894,22907] [2022-02-20 23:53:56,080 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22966,22979] [2022-02-20 23:53:56,081 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23105,23118] [2022-02-20 23:53:56,082 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23179,23192] [2022-02-20 23:53:56,083 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:53:56,104 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:53:56,105 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56 WrapperNode [2022-02-20 23:53:56,105 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:53:56,106 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:53:56,106 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:53:56,106 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:53:56,112 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:53:56" (1/1) ... [2022-02-20 23:53:56,129 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:53:56" (1/1) ... [2022-02-20 23:53:56,150 INFO L137 Inliner]: procedures = 119, calls = 43, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 165 [2022-02-20 23:53:56,150 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:53:56,150 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:53:56,150 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:53:56,150 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:53:56,158 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,159 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,166 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,166 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,179 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,192 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,195 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,205 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:53:56,206 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:53:56,207 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:53:56,207 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:53:56,220 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (1/1) ... [2022-02-20 23:53:56,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:53:56,233 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:53:56,241 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:53:56,250 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:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:53:56,279 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:53:56,279 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:53:56,351 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:53:56,353 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:53:56,816 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:53:56,824 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:53:56,824 INFO L299 CfgBuilder]: Removed 17 assume(true) statements. [2022-02-20 23:53:56,826 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:53:56 BoogieIcfgContainer [2022-02-20 23:53:56,826 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:53:56,827 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:53:56,828 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:53:56,830 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:53:56,830 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:53:55" (1/3) ... [2022-02-20 23:53:56,832 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@552fc02c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:53:56, skipping insertion in model container [2022-02-20 23:53:56,832 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:53:56" (2/3) ... [2022-02-20 23:53:56,832 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@552fc02c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:53:56, skipping insertion in model container [2022-02-20 23:53:56,832 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:53:56" (3/3) ... [2022-02-20 23:53:56,833 INFO L111 eAbstractionObserver]: Analyzing ICFG dll-rb-sentinel-1.i [2022-02-20 23:53:56,838 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:53:56,838 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 77 error locations. [2022-02-20 23:53:56,880 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:53:56,884 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:53:56,884 INFO L340 AbstractCegarLoop]: Starting to check reachability of 77 error locations. [2022-02-20 23:53:56,910 INFO L276 IsEmpty]: Start isEmpty. Operand has 166 states, 88 states have (on average 2.215909090909091) internal successors, (195), 165 states have internal predecessors, (195), 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:53:56,913 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2022-02-20 23:53:56,914 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:56,914 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1] [2022-02-20 23:53:56,914 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:56,917 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:56,918 INFO L85 PathProgramCache]: Analyzing trace with hash 29857, now seen corresponding path program 1 times [2022-02-20 23:53:56,924 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:56,924 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [503026718] [2022-02-20 23:53:56,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:56,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:56,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:57,045 INFO L290 TraceCheckUtils]: 0: Hoare triple {169#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {169#true} is VALID [2022-02-20 23:53:57,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {169#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {171#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:53:57,048 INFO L290 TraceCheckUtils]: 2: Hoare triple {171#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} assume !(1 == #valid[main_~null~0#1.base]); {170#false} is VALID [2022-02-20 23:53:57,049 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:53:57,049 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:57,050 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [503026718] [2022-02-20 23:53:57,050 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [503026718] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:57,051 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:57,051 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:53:57,052 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1676420134] [2022-02-20 23:53:57,053 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:57,056 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:53:57,056 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:57,058 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:57,062 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:53:57,063 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:57,079 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:53:57,080 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:53:57,085 INFO L87 Difference]: Start difference. First operand has 166 states, 88 states have (on average 2.215909090909091) internal successors, (195), 165 states have internal predecessors, (195), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:57,336 INFO L93 Difference]: Finished difference Result 193 states and 199 transitions. [2022-02-20 23:53:57,345 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:53:57,345 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:53:57,345 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:57,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 227 transitions. [2022-02-20 23:53:57,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 227 transitions. [2022-02-20 23:53:57,359 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 227 transitions. [2022-02-20 23:53:57,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:57,556 INFO L225 Difference]: With dead ends: 193 [2022-02-20 23:53:57,556 INFO L226 Difference]: Without dead ends: 189 [2022-02-20 23:53:57,557 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:53:57,559 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 151 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 151 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 103 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:57,562 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [151 Valid, 112 Invalid, 103 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:57,576 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 189 states. [2022-02-20 23:53:57,587 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 189 to 161. [2022-02-20 23:53:57,587 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:57,588 INFO L82 GeneralOperation]: Start isEquivalent. First operand 189 states. Second operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 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:53:57,589 INFO L74 IsIncluded]: Start isIncluded. First operand 189 states. Second operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 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:53:57,590 INFO L87 Difference]: Start difference. First operand 189 states. Second operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 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:53:57,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:57,598 INFO L93 Difference]: Finished difference Result 189 states and 195 transitions. [2022-02-20 23:53:57,598 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 195 transitions. [2022-02-20 23:53:57,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:57,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:57,600 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 189 states. [2022-02-20 23:53:57,600 INFO L87 Difference]: Start difference. First operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 189 states. [2022-02-20 23:53:57,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:57,606 INFO L93 Difference]: Finished difference Result 189 states and 195 transitions. [2022-02-20 23:53:57,606 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 195 transitions. [2022-02-20 23:53:57,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:57,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:57,607 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:57,607 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:57,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 87 states have (on average 1.9080459770114941) internal successors, (166), 160 states have internal predecessors, (166), 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:53:57,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 166 transitions. [2022-02-20 23:53:57,612 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 166 transitions. Word has length 3 [2022-02-20 23:53:57,612 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:57,612 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 166 transitions. [2022-02-20 23:53:57,612 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,612 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 166 transitions. [2022-02-20 23:53:57,613 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2022-02-20 23:53:57,615 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:57,615 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1] [2022-02-20 23:53:57,616 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:53:57,616 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:57,616 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:57,617 INFO L85 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2022-02-20 23:53:57,617 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:57,617 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [502289070] [2022-02-20 23:53:57,618 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:57,618 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:57,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:57,655 INFO L290 TraceCheckUtils]: 0: Hoare triple {906#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {906#true} is VALID [2022-02-20 23:53:57,656 INFO L290 TraceCheckUtils]: 1: Hoare triple {906#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {908#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~null~0#1.base|)))} is VALID [2022-02-20 23:53:57,656 INFO L290 TraceCheckUtils]: 2: Hoare triple {908#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (<= 12 (select |#length| |ULTIMATE.start_main_~null~0#1.base|)))} assume !(4 + main_~null~0#1.offset <= #length[main_~null~0#1.base] && 0 <= main_~null~0#1.offset); {907#false} is VALID [2022-02-20 23:53:57,657 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:53:57,657 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:57,657 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [502289070] [2022-02-20 23:53:57,657 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [502289070] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:57,657 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:57,657 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:53:57,657 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1385502712] [2022-02-20 23:53:57,657 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:57,658 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:53:57,658 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:57,658 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:57,661 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:53:57,661 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:57,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:53:57,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:53:57,661 INFO L87 Difference]: Start difference. First operand 161 states and 166 transitions. Second operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:57,862 INFO L93 Difference]: Finished difference Result 158 states and 163 transitions. [2022-02-20 23:53:57,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:53:57,862 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:53:57,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:57,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 166 transitions. [2022-02-20 23:53:57,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:57,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 166 transitions. [2022-02-20 23:53:57,868 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 166 transitions. [2022-02-20 23:53:57,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:58,003 INFO L225 Difference]: With dead ends: 158 [2022-02-20 23:53:58,004 INFO L226 Difference]: Without dead ends: 158 [2022-02-20 23:53:58,004 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:53:58,005 INFO L933 BasicCegarLoop]: 91 mSDtfsCounter, 158 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 158 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 78 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:58,006 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [158 Valid, 91 Invalid, 78 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:58,006 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-02-20 23:53:58,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 158. [2022-02-20 23:53:58,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:58,010 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 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:53:58,011 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 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:53:58,011 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 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:53:58,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,015 INFO L93 Difference]: Finished difference Result 158 states and 163 transitions. [2022-02-20 23:53:58,015 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 163 transitions. [2022-02-20 23:53:58,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,016 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:53:58,017 INFO L87 Difference]: Start difference. First operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:53:58,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,021 INFO L93 Difference]: Finished difference Result 158 states and 163 transitions. [2022-02-20 23:53:58,021 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 163 transitions. [2022-02-20 23:53:58,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,022 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:58,022 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:58,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 87 states have (on average 1.8735632183908046) internal successors, (163), 157 states have internal predecessors, (163), 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:53:58,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 163 transitions. [2022-02-20 23:53:58,027 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 163 transitions. Word has length 3 [2022-02-20 23:53:58,027 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:58,027 INFO L470 AbstractCegarLoop]: Abstraction has 158 states and 163 transitions. [2022-02-20 23:53:58,027 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:53:58,027 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 163 transitions. [2022-02-20 23:53:58,027 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:53:58,027 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:58,027 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:53:58,028 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:53:58,028 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:58,028 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:58,028 INFO L85 PathProgramCache]: Analyzing trace with hash 1803026981, now seen corresponding path program 1 times [2022-02-20 23:53:58,028 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:58,028 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2049684878] [2022-02-20 23:53:58,028 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:58,028 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:58,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:58,075 INFO L290 TraceCheckUtils]: 0: Hoare triple {1543#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {1543#true} is VALID [2022-02-20 23:53:58,075 INFO L290 TraceCheckUtils]: 1: Hoare triple {1543#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {1543#true} is VALID [2022-02-20 23:53:58,076 INFO L290 TraceCheckUtils]: 2: Hoare triple {1543#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {1543#true} is VALID [2022-02-20 23:53:58,076 INFO L290 TraceCheckUtils]: 3: Hoare triple {1543#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {1543#true} is VALID [2022-02-20 23:53:58,076 INFO L290 TraceCheckUtils]: 4: Hoare triple {1543#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {1543#true} is VALID [2022-02-20 23:53:58,076 INFO L290 TraceCheckUtils]: 5: Hoare triple {1543#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {1545#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,077 INFO L290 TraceCheckUtils]: 6: Hoare triple {1545#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} assume !(1 == #valid[main_~list~0#1.base]); {1544#false} is VALID [2022-02-20 23:53:58,077 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:53:58,077 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:58,077 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2049684878] [2022-02-20 23:53:58,077 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2049684878] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:58,077 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:58,077 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:53:58,077 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [740671495] [2022-02-20 23:53:58,077 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:58,078 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:53:58,078 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:58,078 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,082 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:53:58,082 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:53:58,083 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:58,083 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:53:58,083 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:53:58,083 INFO L87 Difference]: Start difference. First operand 158 states and 163 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,239 INFO L93 Difference]: Finished difference Result 157 states and 162 transitions. [2022-02-20 23:53:58,239 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:53:58,239 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:53:58,239 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:58,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 170 transitions. [2022-02-20 23:53:58,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 170 transitions. [2022-02-20 23:53:58,242 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 170 transitions. [2022-02-20 23:53:58,350 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:58,352 INFO L225 Difference]: With dead ends: 157 [2022-02-20 23:53:58,352 INFO L226 Difference]: Without dead ends: 157 [2022-02-20 23:53:58,352 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:53:58,353 INFO L933 BasicCegarLoop]: 91 mSDtfsCounter, 135 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 135 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 92 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:58,353 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [135 Valid, 97 Invalid, 92 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:58,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 157 states. [2022-02-20 23:53:58,357 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 157 to 153. [2022-02-20 23:53:58,357 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:58,357 INFO L82 GeneralOperation]: Start isEquivalent. First operand 157 states. Second operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 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:53:58,357 INFO L74 IsIncluded]: Start isIncluded. First operand 157 states. Second operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 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:53:58,357 INFO L87 Difference]: Start difference. First operand 157 states. Second operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 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:53:58,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,360 INFO L93 Difference]: Finished difference Result 157 states and 162 transitions. [2022-02-20 23:53:58,360 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 162 transitions. [2022-02-20 23:53:58,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,361 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 157 states. [2022-02-20 23:53:58,361 INFO L87 Difference]: Start difference. First operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 157 states. [2022-02-20 23:53:58,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,366 INFO L93 Difference]: Finished difference Result 157 states and 162 transitions. [2022-02-20 23:53:58,366 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 162 transitions. [2022-02-20 23:53:58,367 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,367 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:58,367 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:58,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 89 states have (on average 1.797752808988764) internal successors, (160), 152 states have internal predecessors, (160), 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:53:58,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 160 transitions. [2022-02-20 23:53:58,370 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 160 transitions. Word has length 7 [2022-02-20 23:53:58,370 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:58,370 INFO L470 AbstractCegarLoop]: Abstraction has 153 states and 160 transitions. [2022-02-20 23:53:58,370 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,370 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 160 transitions. [2022-02-20 23:53:58,370 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:53:58,370 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:58,370 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:53:58,371 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:53:58,371 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:58,371 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:58,371 INFO L85 PathProgramCache]: Analyzing trace with hash 1803026982, now seen corresponding path program 1 times [2022-02-20 23:53:58,371 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:58,371 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [733048709] [2022-02-20 23:53:58,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:58,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:58,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:58,447 INFO L290 TraceCheckUtils]: 0: Hoare triple {2172#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {2172#true} is VALID [2022-02-20 23:53:58,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {2172#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {2172#true} is VALID [2022-02-20 23:53:58,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {2172#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {2172#true} is VALID [2022-02-20 23:53:58,447 INFO L290 TraceCheckUtils]: 3: Hoare triple {2172#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {2172#true} is VALID [2022-02-20 23:53:58,447 INFO L290 TraceCheckUtils]: 4: Hoare triple {2172#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {2172#true} is VALID [2022-02-20 23:53:58,448 INFO L290 TraceCheckUtils]: 5: Hoare triple {2172#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {2174#(and (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:53:58,449 INFO L290 TraceCheckUtils]: 6: Hoare triple {2174#(and (= (+ (- 12) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} assume !(4 + main_~list~0#1.offset <= #length[main_~list~0#1.base] && 0 <= main_~list~0#1.offset); {2173#false} is VALID [2022-02-20 23:53:58,449 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:53:58,449 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:58,449 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [733048709] [2022-02-20 23:53:58,449 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [733048709] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:58,449 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:58,449 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:53:58,450 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [334523494] [2022-02-20 23:53:58,450 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:58,450 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:53:58,450 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:58,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,457 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:53:58,457 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:53:58,457 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:58,458 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:53:58,458 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:53:58,458 INFO L87 Difference]: Start difference. First operand 153 states and 160 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,715 INFO L93 Difference]: Finished difference Result 170 states and 176 transitions. [2022-02-20 23:53:58,715 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:53:58,715 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:53:58,715 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:58,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 184 transitions. [2022-02-20 23:53:58,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 184 transitions. [2022-02-20 23:53:58,718 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 184 transitions. [2022-02-20 23:53:58,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 184 edges. 184 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:58,840 INFO L225 Difference]: With dead ends: 170 [2022-02-20 23:53:58,840 INFO L226 Difference]: Without dead ends: 170 [2022-02-20 23:53:58,840 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:53:58,841 INFO L933 BasicCegarLoop]: 91 mSDtfsCounter, 131 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 131 SdHoareTripleChecker+Valid, 104 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:58,841 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [131 Valid, 104 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:58,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 170 states. [2022-02-20 23:53:58,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 170 to 157. [2022-02-20 23:53:58,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:58,845 INFO L82 GeneralOperation]: Start isEquivalent. First operand 170 states. Second operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 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:53:58,846 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 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:53:58,846 INFO L87 Difference]: Start difference. First operand 170 states. Second operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 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:53:58,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,848 INFO L93 Difference]: Finished difference Result 170 states and 176 transitions. [2022-02-20 23:53:58,848 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 176 transitions. [2022-02-20 23:53:58,849 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,849 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,849 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 170 states. [2022-02-20 23:53:58,849 INFO L87 Difference]: Start difference. First operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 170 states. [2022-02-20 23:53:58,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:58,852 INFO L93 Difference]: Finished difference Result 170 states and 176 transitions. [2022-02-20 23:53:58,852 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 176 transitions. [2022-02-20 23:53:58,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:58,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:58,852 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:58,852 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:58,852 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 96 states have (on average 1.7083333333333333) internal successors, (164), 156 states have internal predecessors, (164), 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:53:58,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 164 transitions. [2022-02-20 23:53:58,855 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 164 transitions. Word has length 7 [2022-02-20 23:53:58,855 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:58,855 INFO L470 AbstractCegarLoop]: Abstraction has 157 states and 164 transitions. [2022-02-20 23:53:58,855 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:53:58,855 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 164 transitions. [2022-02-20 23:53:58,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:53:58,855 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:58,855 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:53:58,855 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:53:58,855 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:58,856 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:58,856 INFO L85 PathProgramCache]: Analyzing trace with hash 1253214510, now seen corresponding path program 1 times [2022-02-20 23:53:58,856 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:58,856 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2123451915] [2022-02-20 23:53:58,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:58,856 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:58,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:58,910 INFO L290 TraceCheckUtils]: 0: Hoare triple {2844#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {2844#true} is VALID [2022-02-20 23:53:58,910 INFO L290 TraceCheckUtils]: 1: Hoare triple {2844#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {2844#true} is VALID [2022-02-20 23:53:58,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {2844#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {2844#true} is VALID [2022-02-20 23:53:58,911 INFO L290 TraceCheckUtils]: 3: Hoare triple {2844#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {2844#true} is VALID [2022-02-20 23:53:58,911 INFO L290 TraceCheckUtils]: 4: Hoare triple {2844#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {2844#true} is VALID [2022-02-20 23:53:58,911 INFO L290 TraceCheckUtils]: 5: Hoare triple {2844#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,912 INFO L290 TraceCheckUtils]: 6: Hoare triple {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,912 INFO L290 TraceCheckUtils]: 7: Hoare triple {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,912 INFO L290 TraceCheckUtils]: 8: Hoare triple {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,913 INFO L290 TraceCheckUtils]: 9: Hoare triple {2846#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,913 INFO L290 TraceCheckUtils]: 10: Hoare triple {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,914 INFO L290 TraceCheckUtils]: 11: Hoare triple {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:53:58,914 INFO L290 TraceCheckUtils]: 12: Hoare triple {2847#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !(1 == #valid[main_~end~0#1.base]); {2845#false} is VALID [2022-02-20 23:53:58,914 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:53:58,914 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:58,914 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2123451915] [2022-02-20 23:53:58,915 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2123451915] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:58,915 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:58,915 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:53:58,915 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1179859062] [2022-02-20 23:53:58,915 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:58,915 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:53:58,915 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:58,915 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:58,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:58,924 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:53:58,924 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:58,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:53:58,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:53:58,924 INFO L87 Difference]: Start difference. First operand 157 states and 164 transitions. Second operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,186 INFO L93 Difference]: Finished difference Result 158 states and 166 transitions. [2022-02-20 23:53:59,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:53:59,186 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:53:59,186 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:59,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 174 transitions. [2022-02-20 23:53:59,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 174 transitions. [2022-02-20 23:53:59,188 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 174 transitions. [2022-02-20 23:53:59,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:59,297 INFO L225 Difference]: With dead ends: 158 [2022-02-20 23:53:59,298 INFO L226 Difference]: Without dead ends: 158 [2022-02-20 23:53:59,298 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 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:53:59,298 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 214 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 214 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:59,299 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [214 Valid, 81 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:59,299 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-02-20 23:53:59,301 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 144. [2022-02-20 23:53:59,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:59,302 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 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:53:59,302 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 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:53:59,302 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 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:53:59,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,304 INFO L93 Difference]: Finished difference Result 158 states and 166 transitions. [2022-02-20 23:53:59,304 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 166 transitions. [2022-02-20 23:53:59,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:59,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:59,305 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:53:59,305 INFO L87 Difference]: Start difference. First operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:53:59,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,310 INFO L93 Difference]: Finished difference Result 158 states and 166 transitions. [2022-02-20 23:53:59,310 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 166 transitions. [2022-02-20 23:53:59,310 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:59,310 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:59,310 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:59,310 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:59,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 98 states have (on average 1.5612244897959184) internal successors, (153), 143 states have internal predecessors, (153), 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:53:59,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 153 transitions. [2022-02-20 23:53:59,313 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 153 transitions. Word has length 13 [2022-02-20 23:53:59,313 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:59,313 INFO L470 AbstractCegarLoop]: Abstraction has 144 states and 153 transitions. [2022-02-20 23:53:59,313 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,313 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 153 transitions. [2022-02-20 23:53:59,313 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:53:59,313 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:59,314 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:53:59,314 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:53:59,314 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:59,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:59,314 INFO L85 PathProgramCache]: Analyzing trace with hash 1253214511, now seen corresponding path program 1 times [2022-02-20 23:53:59,315 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:59,315 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1310529848] [2022-02-20 23:53:59,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:59,315 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:59,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:59,376 INFO L290 TraceCheckUtils]: 0: Hoare triple {3470#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {3470#true} is VALID [2022-02-20 23:53:59,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {3470#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {3470#true} is VALID [2022-02-20 23:53:59,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {3470#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {3470#true} is VALID [2022-02-20 23:53:59,377 INFO L290 TraceCheckUtils]: 3: Hoare triple {3470#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {3470#true} is VALID [2022-02-20 23:53:59,377 INFO L290 TraceCheckUtils]: 4: Hoare triple {3470#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {3470#true} is VALID [2022-02-20 23:53:59,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {3470#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:53:59,378 INFO L290 TraceCheckUtils]: 6: Hoare triple {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:53:59,378 INFO L290 TraceCheckUtils]: 7: Hoare triple {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:53:59,379 INFO L290 TraceCheckUtils]: 8: Hoare triple {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:53:59,379 INFO L290 TraceCheckUtils]: 9: Hoare triple {3472#(and (= 12 (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} is VALID [2022-02-20 23:53:59,383 INFO L290 TraceCheckUtils]: 10: Hoare triple {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} is VALID [2022-02-20 23:53:59,384 INFO L290 TraceCheckUtils]: 11: Hoare triple {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} is VALID [2022-02-20 23:53:59,384 INFO L290 TraceCheckUtils]: 12: Hoare triple {3473#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} assume !(4 + main_~end~0#1.offset <= #length[main_~end~0#1.base] && 0 <= main_~end~0#1.offset); {3471#false} is VALID [2022-02-20 23:53:59,384 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:53:59,384 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:59,385 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1310529848] [2022-02-20 23:53:59,385 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1310529848] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:59,385 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:59,385 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:53:59,385 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [199876443] [2022-02-20 23:53:59,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:59,385 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:53:59,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:59,386 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:59,394 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:53:59,394 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:59,395 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:53:59,395 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:53:59,395 INFO L87 Difference]: Start difference. First operand 144 states and 153 transitions. Second operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,749 INFO L93 Difference]: Finished difference Result 183 states and 193 transitions. [2022-02-20 23:53:59,749 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:53:59,749 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:53:59,749 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:53:59,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 200 transitions. [2022-02-20 23:53:59,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 200 transitions. [2022-02-20 23:53:59,752 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 200 transitions. [2022-02-20 23:53:59,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 200 edges. 200 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:59,892 INFO L225 Difference]: With dead ends: 183 [2022-02-20 23:53:59,892 INFO L226 Difference]: Without dead ends: 183 [2022-02-20 23:53:59,892 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 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:53:59,893 INFO L933 BasicCegarLoop]: 72 mSDtfsCounter, 178 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 181 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 178 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 193 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 181 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:53:59,893 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [178 Valid, 121 Invalid, 193 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 181 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:53:59,894 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 183 states. [2022-02-20 23:53:59,896 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 183 to 154. [2022-02-20 23:53:59,896 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:53:59,896 INFO L82 GeneralOperation]: Start isEquivalent. First operand 183 states. Second operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 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:53:59,897 INFO L74 IsIncluded]: Start isIncluded. First operand 183 states. Second operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 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:53:59,897 INFO L87 Difference]: Start difference. First operand 183 states. Second operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 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:53:59,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,899 INFO L93 Difference]: Finished difference Result 183 states and 193 transitions. [2022-02-20 23:53:59,900 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 193 transitions. [2022-02-20 23:53:59,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:59,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:59,900 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 183 states. [2022-02-20 23:53:59,901 INFO L87 Difference]: Start difference. First operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 183 states. [2022-02-20 23:53:59,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:53:59,903 INFO L93 Difference]: Finished difference Result 183 states and 193 transitions. [2022-02-20 23:53:59,903 INFO L276 IsEmpty]: Start isEmpty. Operand 183 states and 193 transitions. [2022-02-20 23:53:59,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:53:59,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:53:59,904 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:53:59,904 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:53:59,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 109 states have (on average 1.5229357798165137) internal successors, (166), 153 states have internal predecessors, (166), 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:53:59,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 166 transitions. [2022-02-20 23:53:59,907 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 166 transitions. Word has length 13 [2022-02-20 23:53:59,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:53:59,907 INFO L470 AbstractCegarLoop]: Abstraction has 154 states and 166 transitions. [2022-02-20 23:53:59,907 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.333333333333333) internal successors, (13), 4 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:53:59,907 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 166 transitions. [2022-02-20 23:53:59,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:53:59,907 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:53:59,907 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:53:59,908 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:53:59,908 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr45ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:53:59,908 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:53:59,908 INFO L85 PathProgramCache]: Analyzing trace with hash 1748354145, now seen corresponding path program 1 times [2022-02-20 23:53:59,908 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:53:59,909 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [510961285] [2022-02-20 23:53:59,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:53:59,909 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:53:59,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:53:59,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {4181#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {4181#true} is VALID [2022-02-20 23:53:59,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {4181#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {4181#true} is VALID [2022-02-20 23:53:59,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {4181#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:53:59,950 INFO L290 TraceCheckUtils]: 3: Hoare triple {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:53:59,950 INFO L290 TraceCheckUtils]: 4: Hoare triple {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:53:59,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {4183#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,951 INFO L290 TraceCheckUtils]: 7: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,952 INFO L290 TraceCheckUtils]: 9: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,952 INFO L290 TraceCheckUtils]: 10: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,952 INFO L290 TraceCheckUtils]: 11: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} is VALID [2022-02-20 23:53:59,953 INFO L290 TraceCheckUtils]: 12: Hoare triple {4184#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {4185#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:53:59,953 INFO L290 TraceCheckUtils]: 13: Hoare triple {4185#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {4182#false} is VALID [2022-02-20 23:53:59,953 INFO L290 TraceCheckUtils]: 14: Hoare triple {4182#false} assume !false; {4182#false} is VALID [2022-02-20 23:53:59,954 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:53:59,954 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:53:59,954 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [510961285] [2022-02-20 23:53:59,954 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [510961285] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:53:59,954 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:53:59,954 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:53:59,954 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1494226294] [2022-02-20 23:53:59,954 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:53:59,955 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:53:59,955 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:53:59,955 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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:53:59,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:53:59,964 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:53:59,964 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:53:59,965 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:53:59,965 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:53:59,965 INFO L87 Difference]: Start difference. First operand 154 states and 166 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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:54:00,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:00,325 INFO L93 Difference]: Finished difference Result 197 states and 206 transitions. [2022-02-20 23:54:00,325 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:54:00,325 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:54:00,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:00,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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:54:00,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 209 transitions. [2022-02-20 23:54:00,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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:54:00,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 209 transitions. [2022-02-20 23:54:00,328 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 209 transitions. [2022-02-20 23:54:00,473 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:00,475 INFO L225 Difference]: With dead ends: 197 [2022-02-20 23:54:00,475 INFO L226 Difference]: Without dead ends: 197 [2022-02-20 23:54:00,476 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:00,476 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 301 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 301 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 201 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:00,476 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [301 Valid, 153 Invalid, 201 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:00,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-02-20 23:54:00,479 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 152. [2022-02-20 23:54:00,480 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:00,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 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:54:00,480 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 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:54:00,480 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 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:54:00,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:00,483 INFO L93 Difference]: Finished difference Result 197 states and 206 transitions. [2022-02-20 23:54:00,483 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 206 transitions. [2022-02-20 23:54:00,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:00,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:00,484 INFO L74 IsIncluded]: Start isIncluded. First operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 197 states. [2022-02-20 23:54:00,484 INFO L87 Difference]: Start difference. First operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 197 states. [2022-02-20 23:54:00,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:00,486 INFO L93 Difference]: Finished difference Result 197 states and 206 transitions. [2022-02-20 23:54:00,486 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 206 transitions. [2022-02-20 23:54:00,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:00,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:00,487 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:00,487 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:00,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 152 states, 108 states have (on average 1.5) internal successors, (162), 151 states have internal predecessors, (162), 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:54:00,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 162 transitions. [2022-02-20 23:54:00,489 INFO L78 Accepts]: Start accepts. Automaton has 152 states and 162 transitions. Word has length 15 [2022-02-20 23:54:00,489 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:00,489 INFO L470 AbstractCegarLoop]: Abstraction has 152 states and 162 transitions. [2022-02-20 23:54:00,489 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 5 states have internal predecessors, (15), 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:54:00,489 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 162 transitions. [2022-02-20 23:54:00,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:54:00,490 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:00,490 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:54:00,490 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:54:00,490 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:00,490 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:00,490 INFO L85 PathProgramCache]: Analyzing trace with hash -1637230725, now seen corresponding path program 1 times [2022-02-20 23:54:00,491 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:00,491 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2107152754] [2022-02-20 23:54:00,491 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:00,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:00,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:00,540 INFO L290 TraceCheckUtils]: 0: Hoare triple {4935#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {4935#true} is VALID [2022-02-20 23:54:00,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {4935#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {4935#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 3: Hoare triple {4935#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 4: Hoare triple {4935#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {4935#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 6: Hoare triple {4935#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 7: Hoare triple {4935#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {4935#true} is VALID [2022-02-20 23:54:00,541 INFO L290 TraceCheckUtils]: 8: Hoare triple {4935#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {4935#true} is VALID [2022-02-20 23:54:00,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {4935#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {4935#true} is VALID [2022-02-20 23:54:00,542 INFO L290 TraceCheckUtils]: 10: Hoare triple {4935#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {4935#true} is VALID [2022-02-20 23:54:00,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {4935#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {4937#(= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) 1)} is VALID [2022-02-20 23:54:00,547 INFO L290 TraceCheckUtils]: 12: Hoare triple {4937#(= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {4938#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:00,547 INFO L290 TraceCheckUtils]: 13: Hoare triple {4938#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {4938#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:00,548 INFO L290 TraceCheckUtils]: 14: Hoare triple {4938#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {4939#(= (select |#valid| |ULTIMATE.start_main_#t~mem5#1.base|) 1)} is VALID [2022-02-20 23:54:00,548 INFO L290 TraceCheckUtils]: 15: Hoare triple {4939#(= (select |#valid| |ULTIMATE.start_main_#t~mem5#1.base|) 1)} assume !(1 == #valid[main_#t~mem5#1.base]); {4936#false} is VALID [2022-02-20 23:54:00,548 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:54:00,548 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:00,549 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2107152754] [2022-02-20 23:54:00,549 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2107152754] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:00,549 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:00,549 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:00,549 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1642842341] [2022-02-20 23:54:00,549 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:00,549 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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 16 [2022-02-20 23:54:00,549 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:00,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:00,561 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:54:00,561 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:00,561 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:00,561 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:00,561 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:00,561 INFO L87 Difference]: Start difference. First operand 152 states and 162 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:00,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:00,928 INFO L93 Difference]: Finished difference Result 151 states and 160 transitions. [2022-02-20 23:54:00,928 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:00,928 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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 16 [2022-02-20 23:54:00,928 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:00,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:00,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 135 transitions. [2022-02-20 23:54:00,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:00,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 135 transitions. [2022-02-20 23:54:00,930 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 135 transitions. [2022-02-20 23:54:01,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:01,011 INFO L225 Difference]: With dead ends: 151 [2022-02-20 23:54:01,012 INFO L226 Difference]: Without dead ends: 151 [2022-02-20 23:54:01,012 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:01,012 INFO L933 BasicCegarLoop]: 127 mSDtfsCounter, 9 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 342 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:01,012 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 342 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:01,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states. [2022-02-20 23:54:01,014 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 151. [2022-02-20 23:54:01,014 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:01,015 INFO L82 GeneralOperation]: Start isEquivalent. First operand 151 states. Second operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 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:54:01,015 INFO L74 IsIncluded]: Start isIncluded. First operand 151 states. Second operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 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:54:01,015 INFO L87 Difference]: Start difference. First operand 151 states. Second operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 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:54:01,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:01,017 INFO L93 Difference]: Finished difference Result 151 states and 160 transitions. [2022-02-20 23:54:01,017 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 160 transitions. [2022-02-20 23:54:01,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:01,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:01,017 INFO L74 IsIncluded]: Start isIncluded. First operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 151 states. [2022-02-20 23:54:01,017 INFO L87 Difference]: Start difference. First operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 151 states. [2022-02-20 23:54:01,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:01,022 INFO L93 Difference]: Finished difference Result 151 states and 160 transitions. [2022-02-20 23:54:01,022 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 160 transitions. [2022-02-20 23:54:01,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:01,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:01,022 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:01,022 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:01,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 108 states have (on average 1.4814814814814814) internal successors, (160), 150 states have internal predecessors, (160), 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:54:01,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 160 transitions. [2022-02-20 23:54:01,024 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 160 transitions. Word has length 16 [2022-02-20 23:54:01,024 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:01,024 INFO L470 AbstractCegarLoop]: Abstraction has 151 states and 160 transitions. [2022-02-20 23:54:01,024 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,024 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 160 transitions. [2022-02-20 23:54:01,024 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:54:01,025 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:01,025 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:54:01,025 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:54:01,025 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:01,025 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:01,025 INFO L85 PathProgramCache]: Analyzing trace with hash -1637230724, now seen corresponding path program 1 times [2022-02-20 23:54:01,025 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:01,025 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [992849815] [2022-02-20 23:54:01,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:01,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:01,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:01,112 INFO L290 TraceCheckUtils]: 0: Hoare triple {5550#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {5550#true} is VALID [2022-02-20 23:54:01,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {5550#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {5550#true} is VALID [2022-02-20 23:54:01,113 INFO L290 TraceCheckUtils]: 2: Hoare triple {5550#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {5550#true} is VALID [2022-02-20 23:54:01,113 INFO L290 TraceCheckUtils]: 3: Hoare triple {5550#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 4: Hoare triple {5550#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {5550#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 6: Hoare triple {5550#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 7: Hoare triple {5550#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {5550#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {5550#true} is VALID [2022-02-20 23:54:01,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {5550#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {5550#true} is VALID [2022-02-20 23:54:01,115 INFO L290 TraceCheckUtils]: 10: Hoare triple {5550#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {5550#true} is VALID [2022-02-20 23:54:01,115 INFO L290 TraceCheckUtils]: 11: Hoare triple {5550#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {5552#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) 12))} is VALID [2022-02-20 23:54:01,116 INFO L290 TraceCheckUtils]: 12: Hoare triple {5552#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) 12))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {5553#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:01,116 INFO L290 TraceCheckUtils]: 13: Hoare triple {5553#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {5553#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:01,117 INFO L290 TraceCheckUtils]: 14: Hoare triple {5553#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {5554#(and (= |ULTIMATE.start_main_#t~mem5#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_#t~mem5#1.base|) (- 12)) 0))} is VALID [2022-02-20 23:54:01,117 INFO L290 TraceCheckUtils]: 15: Hoare triple {5554#(and (= |ULTIMATE.start_main_#t~mem5#1.offset| 0) (= (+ (select |#length| |ULTIMATE.start_main_#t~mem5#1.base|) (- 12)) 0))} assume !(4 + (4 + main_#t~mem5#1.offset) <= #length[main_#t~mem5#1.base] && 0 <= 4 + main_#t~mem5#1.offset); {5551#false} is VALID [2022-02-20 23:54:01,118 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:54:01,118 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:01,118 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [992849815] [2022-02-20 23:54:01,118 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [992849815] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:01,118 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:01,118 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:01,118 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1650535696] [2022-02-20 23:54:01,118 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:01,119 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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 16 [2022-02-20 23:54:01,119 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:01,122 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,132 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:54:01,132 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:01,132 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:01,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:01,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:01,134 INFO L87 Difference]: Start difference. First operand 151 states and 160 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:01,479 INFO L93 Difference]: Finished difference Result 150 states and 158 transitions. [2022-02-20 23:54:01,479 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:54:01,479 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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 16 [2022-02-20 23:54:01,480 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:01,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 134 transitions. [2022-02-20 23:54:01,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 134 transitions. [2022-02-20 23:54:01,481 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 134 transitions. [2022-02-20 23:54:01,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:01,555 INFO L225 Difference]: With dead ends: 150 [2022-02-20 23:54:01,555 INFO L226 Difference]: Without dead ends: 150 [2022-02-20 23:54:01,555 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:01,556 INFO L933 BasicCegarLoop]: 128 mSDtfsCounter, 4 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 196 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 327 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 196 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:01,556 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 327 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 196 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:01,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2022-02-20 23:54:01,557 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 150. [2022-02-20 23:54:01,557 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:01,558 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:01,558 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:01,558 INFO L87 Difference]: Start difference. First operand 150 states. Second operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:01,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:01,560 INFO L93 Difference]: Finished difference Result 150 states and 158 transitions. [2022-02-20 23:54:01,560 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 158 transitions. [2022-02-20 23:54:01,561 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:01,561 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:01,561 INFO L74 IsIncluded]: Start isIncluded. First operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 150 states. [2022-02-20 23:54:01,561 INFO L87 Difference]: Start difference. First operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 150 states. [2022-02-20 23:54:01,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:01,565 INFO L93 Difference]: Finished difference Result 150 states and 158 transitions. [2022-02-20 23:54:01,565 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 158 transitions. [2022-02-20 23:54:01,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:01,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:01,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:01,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:01,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 108 states have (on average 1.462962962962963) internal successors, (158), 149 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:01,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 158 transitions. [2022-02-20 23:54:01,567 INFO L78 Accepts]: Start accepts. Automaton has 150 states and 158 transitions. Word has length 16 [2022-02-20 23:54:01,567 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:01,567 INFO L470 AbstractCegarLoop]: Abstraction has 150 states and 158 transitions. [2022-02-20 23:54:01,567 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 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:54:01,567 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 158 transitions. [2022-02-20 23:54:01,567 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:54:01,568 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:01,568 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:01,568 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:54:01,568 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr48ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:01,569 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:01,569 INFO L85 PathProgramCache]: Analyzing trace with hash 154003716, now seen corresponding path program 1 times [2022-02-20 23:54:01,569 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:01,569 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290077528] [2022-02-20 23:54:01,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:01,569 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:01,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:01,687 INFO L290 TraceCheckUtils]: 0: Hoare triple {6161#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {6161#true} is VALID [2022-02-20 23:54:01,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {6161#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:01,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:01,688 INFO L290 TraceCheckUtils]: 3: Hoare triple {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:01,688 INFO L290 TraceCheckUtils]: 4: Hoare triple {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:01,694 INFO L290 TraceCheckUtils]: 5: Hoare triple {6163#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,695 INFO L290 TraceCheckUtils]: 6: Hoare triple {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {6164#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,697 INFO L290 TraceCheckUtils]: 10: Hoare triple {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:01,698 INFO L290 TraceCheckUtils]: 12: Hoare triple {6165#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {6166#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~null~0#1.offset| 8) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:01,698 INFO L290 TraceCheckUtils]: 13: Hoare triple {6166#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~null~0#1.offset| 8) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|))))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {6167#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:01,700 INFO L290 TraceCheckUtils]: 14: Hoare triple {6167#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {6167#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:01,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {6167#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {6168#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem13#1|)} is VALID [2022-02-20 23:54:01,701 INFO L290 TraceCheckUtils]: 16: Hoare triple {6168#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem13#1|)} assume !(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {6162#false} is VALID [2022-02-20 23:54:01,701 INFO L290 TraceCheckUtils]: 17: Hoare triple {6162#false} assume !false; {6162#false} is VALID [2022-02-20 23:54:01,701 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:54:01,702 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:01,702 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290077528] [2022-02-20 23:54:01,702 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [290077528] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:01,702 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:01,702 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:54:01,702 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1800414304] [2022-02-20 23:54:01,702 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:01,702 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:54:01,702 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:01,702 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:01,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:01,715 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:54:01,715 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:01,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:54:01,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=38, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:01,715 INFO L87 Difference]: Start difference. First operand 150 states and 158 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:02,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:02,317 INFO L93 Difference]: Finished difference Result 204 states and 216 transitions. [2022-02-20 23:54:02,317 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:54:02,317 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:54:02,317 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:02,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:02,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 209 transitions. [2022-02-20 23:54:02,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:02,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 209 transitions. [2022-02-20 23:54:02,320 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 209 transitions. [2022-02-20 23:54:02,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:02,466 INFO L225 Difference]: With dead ends: 204 [2022-02-20 23:54:02,466 INFO L226 Difference]: Without dead ends: 204 [2022-02-20 23:54:02,466 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:54:02,466 INFO L933 BasicCegarLoop]: 86 mSDtfsCounter, 402 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 258 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 402 SdHoareTripleChecker+Valid, 304 SdHoareTripleChecker+Invalid, 287 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 258 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:02,467 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [402 Valid, 304 Invalid, 287 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 258 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:02,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 204 states. [2022-02-20 23:54:02,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 204 to 155. [2022-02-20 23:54:02,469 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:02,469 INFO L82 GeneralOperation]: Start isEquivalent. First operand 204 states. Second operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 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:54:02,469 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 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:54:02,469 INFO L87 Difference]: Start difference. First operand 204 states. Second operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 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:54:02,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:02,471 INFO L93 Difference]: Finished difference Result 204 states and 216 transitions. [2022-02-20 23:54:02,471 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 216 transitions. [2022-02-20 23:54:02,472 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:02,472 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:02,472 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 204 states. [2022-02-20 23:54:02,472 INFO L87 Difference]: Start difference. First operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 204 states. [2022-02-20 23:54:02,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:02,474 INFO L93 Difference]: Finished difference Result 204 states and 216 transitions. [2022-02-20 23:54:02,474 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 216 transitions. [2022-02-20 23:54:02,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:02,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:02,474 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:02,475 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:02,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 113 states have (on average 1.4424778761061947) internal successors, (163), 154 states have internal predecessors, (163), 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:54:02,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 163 transitions. [2022-02-20 23:54:02,476 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 163 transitions. Word has length 18 [2022-02-20 23:54:02,476 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:02,476 INFO L470 AbstractCegarLoop]: Abstraction has 155 states and 163 transitions. [2022-02-20 23:54:02,476 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 8 states have internal predecessors, (18), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:02,476 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 163 transitions. [2022-02-20 23:54:02,476 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:54:02,477 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:02,477 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:02,477 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:54:02,477 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr20REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:02,477 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:02,477 INFO L85 PathProgramCache]: Analyzing trace with hash 510771581, now seen corresponding path program 1 times [2022-02-20 23:54:02,477 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:02,477 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1224139242] [2022-02-20 23:54:02,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:02,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:02,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:02,566 INFO L290 TraceCheckUtils]: 0: Hoare triple {6946#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {6946#true} is VALID [2022-02-20 23:54:02,566 INFO L290 TraceCheckUtils]: 1: Hoare triple {6946#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {6946#true} is VALID [2022-02-20 23:54:02,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {6946#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {6946#true} is VALID [2022-02-20 23:54:02,567 INFO L290 TraceCheckUtils]: 3: Hoare triple {6946#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {6946#true} is VALID [2022-02-20 23:54:02,567 INFO L290 TraceCheckUtils]: 4: Hoare triple {6946#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {6946#true} is VALID [2022-02-20 23:54:02,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {6946#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {6946#true} is VALID [2022-02-20 23:54:02,572 INFO L290 TraceCheckUtils]: 6: Hoare triple {6946#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,573 INFO L290 TraceCheckUtils]: 7: Hoare triple {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,574 INFO L290 TraceCheckUtils]: 9: Hoare triple {6948#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,575 INFO L290 TraceCheckUtils]: 10: Hoare triple {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,576 INFO L290 TraceCheckUtils]: 11: Hoare triple {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {6950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) 1))} is VALID [2022-02-20 23:54:02,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {6950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) 1))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {6951#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:02,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {6951#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {6951#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:02,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {6951#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {6952#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:02,586 INFO L290 TraceCheckUtils]: 15: Hoare triple {6952#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {6953#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:02,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {6953#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {6953#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:02,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {6953#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {6954#(= (select |#valid| |ULTIMATE.start_main_#t~mem6#1.base|) 1)} is VALID [2022-02-20 23:54:02,587 INFO L290 TraceCheckUtils]: 18: Hoare triple {6954#(= (select |#valid| |ULTIMATE.start_main_#t~mem6#1.base|) 1)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:02,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {6949#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !(1 == #valid[main_~end~0#1.base]); {6947#false} is VALID [2022-02-20 23:54:02,587 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:54:02,587 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:02,587 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1224139242] [2022-02-20 23:54:02,587 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1224139242] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:02,588 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:02,588 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:54:02,588 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1468614212] [2022-02-20 23:54:02,588 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:02,588 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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 20 [2022-02-20 23:54:02,588 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:02,588 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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:54:02,602 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:02,602 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:54:02,602 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:02,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:54:02,602 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:02,602 INFO L87 Difference]: Start difference. First operand 155 states and 163 transitions. Second operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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:54:03,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:03,186 INFO L93 Difference]: Finished difference Result 154 states and 162 transitions. [2022-02-20 23:54:03,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:54:03,186 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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 20 [2022-02-20 23:54:03,186 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:03,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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:54:03,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 137 transitions. [2022-02-20 23:54:03,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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:54:03,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 137 transitions. [2022-02-20 23:54:03,188 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 137 transitions. [2022-02-20 23:54:03,282 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:03,283 INFO L225 Difference]: With dead ends: 154 [2022-02-20 23:54:03,283 INFO L226 Difference]: Without dead ends: 154 [2022-02-20 23:54:03,283 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=148, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:54:03,284 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 187 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 371 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 187 SdHoareTripleChecker+Valid, 225 SdHoareTripleChecker+Invalid, 389 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 371 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:03,284 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [187 Valid, 225 Invalid, 389 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 371 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:03,284 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-02-20 23:54:03,285 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 154. [2022-02-20 23:54:03,286 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:03,286 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 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:54:03,286 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 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:54:03,286 INFO L87 Difference]: Start difference. First operand 154 states. Second operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 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:54:03,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:03,287 INFO L93 Difference]: Finished difference Result 154 states and 162 transitions. [2022-02-20 23:54:03,288 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 162 transitions. [2022-02-20 23:54:03,288 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:03,288 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:03,288 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 154 states. [2022-02-20 23:54:03,288 INFO L87 Difference]: Start difference. First operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 154 states. [2022-02-20 23:54:03,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:03,290 INFO L93 Difference]: Finished difference Result 154 states and 162 transitions. [2022-02-20 23:54:03,290 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 162 transitions. [2022-02-20 23:54:03,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:03,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:03,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:03,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:03,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 113 states have (on average 1.4336283185840708) internal successors, (162), 153 states have internal predecessors, (162), 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:54:03,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 162 transitions. [2022-02-20 23:54:03,292 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 162 transitions. Word has length 20 [2022-02-20 23:54:03,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:03,293 INFO L470 AbstractCegarLoop]: Abstraction has 154 states and 162 transitions. [2022-02-20 23:54:03,293 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 9 states have internal predecessors, (20), 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:54:03,293 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 162 transitions. [2022-02-20 23:54:03,293 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:54:03,293 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:03,293 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:03,293 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:54:03,293 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr21REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:03,294 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:03,294 INFO L85 PathProgramCache]: Analyzing trace with hash 510771582, now seen corresponding path program 1 times [2022-02-20 23:54:03,294 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:03,294 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174887375] [2022-02-20 23:54:03,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:03,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:03,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:03,413 INFO L290 TraceCheckUtils]: 0: Hoare triple {7585#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {7585#true} is VALID [2022-02-20 23:54:03,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {7585#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {7585#true} is VALID [2022-02-20 23:54:03,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {7585#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {7585#true} is VALID [2022-02-20 23:54:03,414 INFO L290 TraceCheckUtils]: 3: Hoare triple {7585#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {7585#true} is VALID [2022-02-20 23:54:03,414 INFO L290 TraceCheckUtils]: 4: Hoare triple {7585#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {7585#true} is VALID [2022-02-20 23:54:03,414 INFO L290 TraceCheckUtils]: 5: Hoare triple {7585#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {7585#true} is VALID [2022-02-20 23:54:03,414 INFO L290 TraceCheckUtils]: 6: Hoare triple {7585#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:03,414 INFO L290 TraceCheckUtils]: 7: Hoare triple {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:03,415 INFO L290 TraceCheckUtils]: 8: Hoare triple {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} is VALID [2022-02-20 23:54:03,415 INFO L290 TraceCheckUtils]: 9: Hoare triple {7587#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1)} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {7588#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:03,415 INFO L290 TraceCheckUtils]: 10: Hoare triple {7588#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {7588#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:03,416 INFO L290 TraceCheckUtils]: 11: Hoare triple {7588#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {7589#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| 0) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) 12))} is VALID [2022-02-20 23:54:03,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {7589#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| 0) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) 12))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {7590#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:03,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {7590#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {7590#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:03,418 INFO L290 TraceCheckUtils]: 14: Hoare triple {7590#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {7591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:03,419 INFO L290 TraceCheckUtils]: 15: Hoare triple {7591#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {7592#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:03,419 INFO L290 TraceCheckUtils]: 16: Hoare triple {7592#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {7592#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:03,420 INFO L290 TraceCheckUtils]: 17: Hoare triple {7592#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {7593#(and (= |ULTIMATE.start_main_#t~mem6#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~mem6#1.base|) 12))} is VALID [2022-02-20 23:54:03,420 INFO L290 TraceCheckUtils]: 18: Hoare triple {7593#(and (= |ULTIMATE.start_main_#t~mem6#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~mem6#1.base|) 12))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {7594#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} is VALID [2022-02-20 23:54:03,420 INFO L290 TraceCheckUtils]: 19: Hoare triple {7594#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} assume !(4 + main_~end~0#1.offset <= #length[main_~end~0#1.base] && 0 <= main_~end~0#1.offset); {7586#false} is VALID [2022-02-20 23:54:03,421 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:54:03,421 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:03,421 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1174887375] [2022-02-20 23:54:03,421 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1174887375] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:03,421 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:03,421 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:54:03,421 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2063831493] [2022-02-20 23:54:03,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:03,422 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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 20 [2022-02-20 23:54:03,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:03,422 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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:54:03,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:03,436 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:54:03,437 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:03,437 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:54:03,437 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:54:03,438 INFO L87 Difference]: Start difference. First operand 154 states and 162 transitions. Second operand has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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:54:04,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:04,544 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:04,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:54:04,545 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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 20 [2022-02-20 23:54:04,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:04,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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:54:04,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:54:04,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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:54:04,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 166 transitions. [2022-02-20 23:54:04,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 166 transitions. [2022-02-20 23:54:04,650 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:04,651 INFO L225 Difference]: With dead ends: 172 [2022-02-20 23:54:04,651 INFO L226 Difference]: Without dead ends: 172 [2022-02-20 23:54:04,651 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=140, Invalid=366, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:54:04,652 INFO L933 BasicCegarLoop]: 70 mSDtfsCounter, 233 mSDsluCounter, 289 mSDsCounter, 0 mSdLazyCounter, 611 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 233 SdHoareTripleChecker+Valid, 359 SdHoareTripleChecker+Invalid, 643 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 611 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:04,652 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [233 Valid, 359 Invalid, 643 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 611 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:54:04,652 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 172 states. [2022-02-20 23:54:04,654 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 172 to 158. [2022-02-20 23:54:04,654 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:04,654 INFO L82 GeneralOperation]: Start isEquivalent. First operand 172 states. Second operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 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:54:04,654 INFO L74 IsIncluded]: Start isIncluded. First operand 172 states. Second operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 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:54:04,655 INFO L87 Difference]: Start difference. First operand 172 states. Second operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 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:54:04,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:04,656 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:04,656 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 181 transitions. [2022-02-20 23:54:04,657 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:04,657 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:04,657 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 172 states. [2022-02-20 23:54:04,657 INFO L87 Difference]: Start difference. First operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 172 states. [2022-02-20 23:54:04,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:04,659 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:04,659 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 181 transitions. [2022-02-20 23:54:04,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:04,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:04,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:04,659 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:04,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 123 states have (on average 1.3821138211382114) internal successors, (170), 157 states have internal predecessors, (170), 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:54:04,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 170 transitions. [2022-02-20 23:54:04,661 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 170 transitions. Word has length 20 [2022-02-20 23:54:04,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:04,661 INFO L470 AbstractCegarLoop]: Abstraction has 158 states and 170 transitions. [2022-02-20 23:54:04,661 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 10 states have internal predecessors, (20), 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:54:04,662 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 170 transitions. [2022-02-20 23:54:04,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:54:04,662 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:04,662 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] [2022-02-20 23:54:04,662 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 23:54:04,662 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr49REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:04,663 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:04,663 INFO L85 PathProgramCache]: Analyzing trace with hash 2006006511, now seen corresponding path program 1 times [2022-02-20 23:54:04,663 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:04,663 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [455317061] [2022-02-20 23:54:04,663 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:04,663 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:04,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:04,728 INFO L290 TraceCheckUtils]: 0: Hoare triple {8297#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {8297#true} is VALID [2022-02-20 23:54:04,729 INFO L290 TraceCheckUtils]: 1: Hoare triple {8297#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {8297#true} is VALID [2022-02-20 23:54:04,729 INFO L290 TraceCheckUtils]: 2: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {8297#true} is VALID [2022-02-20 23:54:04,729 INFO L290 TraceCheckUtils]: 3: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {8297#true} is VALID [2022-02-20 23:54:04,729 INFO L290 TraceCheckUtils]: 4: Hoare triple {8297#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {8297#true} is VALID [2022-02-20 23:54:04,729 INFO L290 TraceCheckUtils]: 5: Hoare triple {8297#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {8297#true} is VALID [2022-02-20 23:54:04,730 INFO L290 TraceCheckUtils]: 6: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,731 INFO L290 TraceCheckUtils]: 8: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,732 INFO L290 TraceCheckUtils]: 9: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,732 INFO L290 TraceCheckUtils]: 10: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,733 INFO L290 TraceCheckUtils]: 11: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:04,733 INFO L290 TraceCheckUtils]: 12: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,733 INFO L290 TraceCheckUtils]: 13: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,734 INFO L290 TraceCheckUtils]: 14: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,734 INFO L290 TraceCheckUtils]: 15: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,735 INFO L290 TraceCheckUtils]: 16: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,735 INFO L290 TraceCheckUtils]: 17: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,735 INFO L290 TraceCheckUtils]: 18: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,736 INFO L290 TraceCheckUtils]: 19: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,736 INFO L290 TraceCheckUtils]: 20: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:04,741 INFO L290 TraceCheckUtils]: 21: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {8301#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:54:04,741 INFO L290 TraceCheckUtils]: 22: Hoare triple {8301#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {8302#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:04,742 INFO L290 TraceCheckUtils]: 23: Hoare triple {8302#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8298#false} is VALID [2022-02-20 23:54:04,742 INFO L290 TraceCheckUtils]: 24: Hoare triple {8298#false} assume !(1 == #valid[main_~end~0#1.base]); {8298#false} is VALID [2022-02-20 23:54:04,742 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:04,742 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:04,743 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [455317061] [2022-02-20 23:54:04,743 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [455317061] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:54:04,743 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [287087376] [2022-02-20 23:54:04,743 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:04,743 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:04,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:54:04,745 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:54:04,750 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 23:54:04,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:04,846 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 33 conjunts are in the unsatisfiable core [2022-02-20 23:54:04,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:04,872 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:04,975 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 11 treesize of output 7 [2022-02-20 23:54:04,981 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 11 treesize of output 7 [2022-02-20 23:54:05,026 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:05,027 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:54:05,034 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:05,034 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:54:05,071 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:05,072 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:54:05,079 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:05,080 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:54:05,269 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:54:05,279 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:54:05,313 INFO L290 TraceCheckUtils]: 0: Hoare triple {8297#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {8297#true} is VALID [2022-02-20 23:54:05,314 INFO L290 TraceCheckUtils]: 1: Hoare triple {8297#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:05,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:05,314 INFO L290 TraceCheckUtils]: 3: Hoare triple {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:05,315 INFO L290 TraceCheckUtils]: 4: Hoare triple {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:05,315 INFO L290 TraceCheckUtils]: 5: Hoare triple {8309#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {8322#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} is VALID [2022-02-20 23:54:05,316 INFO L290 TraceCheckUtils]: 6: Hoare triple {8322#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~list~0#1.offset| 0))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,318 INFO L290 TraceCheckUtils]: 10: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,319 INFO L290 TraceCheckUtils]: 11: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {8326#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~list~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,322 INFO L290 TraceCheckUtils]: 13: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,323 INFO L290 TraceCheckUtils]: 15: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,323 INFO L290 TraceCheckUtils]: 16: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,324 INFO L290 TraceCheckUtils]: 17: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,324 INFO L290 TraceCheckUtils]: 18: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,325 INFO L290 TraceCheckUtils]: 19: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,326 INFO L290 TraceCheckUtils]: 21: Hoare triple {8345#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {8373#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:54:05,326 INFO L290 TraceCheckUtils]: 22: Hoare triple {8373#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {8377#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} is VALID [2022-02-20 23:54:05,326 INFO L290 TraceCheckUtils]: 23: Hoare triple {8377#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8298#false} is VALID [2022-02-20 23:54:05,327 INFO L290 TraceCheckUtils]: 24: Hoare triple {8298#false} assume !(1 == #valid[main_~end~0#1.base]); {8298#false} is VALID [2022-02-20 23:54:05,327 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:05,327 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:54:05,500 INFO L290 TraceCheckUtils]: 24: Hoare triple {8298#false} assume !(1 == #valid[main_~end~0#1.base]); {8298#false} is VALID [2022-02-20 23:54:05,500 INFO L290 TraceCheckUtils]: 23: Hoare triple {8302#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8298#false} is VALID [2022-02-20 23:54:05,501 INFO L290 TraceCheckUtils]: 22: Hoare triple {8301#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {8302#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:05,501 INFO L290 TraceCheckUtils]: 21: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {8301#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem17#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem17#1.base|))} is VALID [2022-02-20 23:54:05,502 INFO L290 TraceCheckUtils]: 20: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,502 INFO L290 TraceCheckUtils]: 19: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,503 INFO L290 TraceCheckUtils]: 18: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,503 INFO L290 TraceCheckUtils]: 17: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,504 INFO L290 TraceCheckUtils]: 16: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,504 INFO L290 TraceCheckUtils]: 15: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,505 INFO L290 TraceCheckUtils]: 14: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,505 INFO L290 TraceCheckUtils]: 13: Hoare triple {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,505 INFO L290 TraceCheckUtils]: 12: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8300#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:05,506 INFO L290 TraceCheckUtils]: 11: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,506 INFO L290 TraceCheckUtils]: 10: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,507 INFO L290 TraceCheckUtils]: 9: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,507 INFO L290 TraceCheckUtils]: 8: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 6: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {8299#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {8297#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {8297#true} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 4: Hoare triple {8297#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {8297#true} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 3: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {8297#true} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {8297#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {8297#true} is VALID [2022-02-20 23:54:05,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {8297#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {8297#true} is VALID [2022-02-20 23:54:05,510 INFO L290 TraceCheckUtils]: 0: Hoare triple {8297#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {8297#true} is VALID [2022-02-20 23:54:05,510 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:05,510 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [287087376] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:54:05,510 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:54:05,510 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 8, 6] total 12 [2022-02-20 23:54:05,510 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [687744911] [2022-02-20 23:54:05,511 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:54:05,511 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:54:05,511 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:05,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:05,543 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:05,543 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:54:05,543 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:05,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:54:05,543 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:54:05,544 INFO L87 Difference]: Start difference. First operand 158 states and 170 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:06,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:06,569 INFO L93 Difference]: Finished difference Result 209 states and 225 transitions. [2022-02-20 23:54:06,569 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:54:06,569 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:54:06,569 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:06,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:06,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 200 transitions. [2022-02-20 23:54:06,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:06,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 200 transitions. [2022-02-20 23:54:06,571 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 200 transitions. [2022-02-20 23:54:06,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 200 edges. 200 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:06,709 INFO L225 Difference]: With dead ends: 209 [2022-02-20 23:54:06,709 INFO L226 Difference]: Without dead ends: 209 [2022-02-20 23:54:06,709 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 44 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:54:06,709 INFO L933 BasicCegarLoop]: 77 mSDtfsCounter, 247 mSDsluCounter, 395 mSDsCounter, 0 mSdLazyCounter, 440 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 247 SdHoareTripleChecker+Valid, 472 SdHoareTripleChecker+Invalid, 473 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 440 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:06,709 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [247 Valid, 472 Invalid, 473 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 440 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:54:06,710 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 209 states. [2022-02-20 23:54:06,711 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 209 to 165. [2022-02-20 23:54:06,712 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:06,712 INFO L82 GeneralOperation]: Start isEquivalent. First operand 209 states. Second operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 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:54:06,712 INFO L74 IsIncluded]: Start isIncluded. First operand 209 states. Second operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 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:54:06,712 INFO L87 Difference]: Start difference. First operand 209 states. Second operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 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:54:06,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:06,714 INFO L93 Difference]: Finished difference Result 209 states and 225 transitions. [2022-02-20 23:54:06,714 INFO L276 IsEmpty]: Start isEmpty. Operand 209 states and 225 transitions. [2022-02-20 23:54:06,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:06,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:06,715 INFO L74 IsIncluded]: Start isIncluded. First operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 209 states. [2022-02-20 23:54:06,715 INFO L87 Difference]: Start difference. First operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 209 states. [2022-02-20 23:54:06,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:06,717 INFO L93 Difference]: Finished difference Result 209 states and 225 transitions. [2022-02-20 23:54:06,717 INFO L276 IsEmpty]: Start isEmpty. Operand 209 states and 225 transitions. [2022-02-20 23:54:06,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:06,718 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:06,718 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:06,718 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:06,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 165 states, 130 states have (on average 1.3692307692307693) internal successors, (178), 164 states have internal predecessors, (178), 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:54:06,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 178 transitions. [2022-02-20 23:54:06,720 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 178 transitions. Word has length 25 [2022-02-20 23:54:06,720 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:06,720 INFO L470 AbstractCegarLoop]: Abstraction has 165 states and 178 transitions. [2022-02-20 23:54:06,720 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:06,720 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 178 transitions. [2022-02-20 23:54:06,720 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:54:06,721 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:06,721 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:06,740 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 23:54:06,938 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-02-20 23:54:06,938 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr53ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:06,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:06,938 INFO L85 PathProgramCache]: Analyzing trace with hash 1963988258, now seen corresponding path program 1 times [2022-02-20 23:54:06,939 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:06,939 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [676471616] [2022-02-20 23:54:06,939 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:06,939 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:06,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:07,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {9259#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {9259#true} is VALID [2022-02-20 23:54:07,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {9259#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {9259#true} is VALID [2022-02-20 23:54:07,015 INFO L290 TraceCheckUtils]: 2: Hoare triple {9259#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 3: Hoare triple {9259#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 4: Hoare triple {9259#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {9259#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 6: Hoare triple {9259#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {9259#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {9259#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {9259#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {9259#true} is VALID [2022-02-20 23:54:07,016 INFO L290 TraceCheckUtils]: 10: Hoare triple {9259#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9259#true} is VALID [2022-02-20 23:54:07,017 INFO L290 TraceCheckUtils]: 11: Hoare triple {9259#true} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9259#true} is VALID [2022-02-20 23:54:07,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {9259#true} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {9259#true} is VALID [2022-02-20 23:54:07,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {9259#true} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9259#true} is VALID [2022-02-20 23:54:07,017 INFO L290 TraceCheckUtils]: 14: Hoare triple {9259#true} goto; {9259#true} is VALID [2022-02-20 23:54:07,017 INFO L290 TraceCheckUtils]: 15: Hoare triple {9259#true} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {9261#(= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|)} is VALID [2022-02-20 23:54:07,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {9261#(= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|)} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:07,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:07,019 INFO L290 TraceCheckUtils]: 18: Hoare triple {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:07,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {9262#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {9263#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:54:07,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {9263#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem14#1|)} assume ~unnamed1~0~RED == main_#t~mem14#1;havoc main_#t~mem14#1; {9260#false} is VALID [2022-02-20 23:54:07,020 INFO L290 TraceCheckUtils]: 21: Hoare triple {9260#false} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1047 {9260#false} is VALID [2022-02-20 23:54:07,021 INFO L290 TraceCheckUtils]: 22: Hoare triple {9260#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {9260#false} is VALID [2022-02-20 23:54:07,027 INFO L290 TraceCheckUtils]: 23: Hoare triple {9260#false} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9260#false} is VALID [2022-02-20 23:54:07,029 INFO L290 TraceCheckUtils]: 24: Hoare triple {9260#false} assume !false; {9260#false} is VALID [2022-02-20 23:54:07,029 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:54:07,030 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:07,030 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [676471616] [2022-02-20 23:54:07,030 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [676471616] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:07,030 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:07,030 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:54:07,030 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103818854] [2022-02-20 23:54:07,030 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:07,031 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 25 [2022-02-20 23:54:07,031 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:07,031 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:54:07,057 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:07,057 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:07,057 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:07,057 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:07,057 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:07,058 INFO L87 Difference]: Start difference. First operand 165 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:54:07,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,354 INFO L93 Difference]: Finished difference Result 169 states and 180 transitions. [2022-02-20 23:54:07,354 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:54:07,354 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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 25 [2022-02-20 23:54:07,354 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:07,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:54:07,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 140 transitions. [2022-02-20 23:54:07,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:54:07,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 140 transitions. [2022-02-20 23:54:07,356 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 140 transitions. [2022-02-20 23:54:07,448 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:07,449 INFO L225 Difference]: With dead ends: 169 [2022-02-20 23:54:07,450 INFO L226 Difference]: Without dead ends: 169 [2022-02-20 23:54:07,450 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 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:54:07,450 INFO L933 BasicCegarLoop]: 117 mSDtfsCounter, 25 mSDsluCounter, 221 mSDsCounter, 0 mSdLazyCounter, 169 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 338 SdHoareTripleChecker+Invalid, 173 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 169 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:07,450 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 338 Invalid, 173 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 169 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:07,451 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2022-02-20 23:54:07,452 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 164. [2022-02-20 23:54:07,452 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:07,452 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 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:54:07,453 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 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:54:07,453 INFO L87 Difference]: Start difference. First operand 169 states. Second operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 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:54:07,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,454 INFO L93 Difference]: Finished difference Result 169 states and 180 transitions. [2022-02-20 23:54:07,454 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 180 transitions. [2022-02-20 23:54:07,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:07,455 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:07,455 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 169 states. [2022-02-20 23:54:07,455 INFO L87 Difference]: Start difference. First operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 169 states. [2022-02-20 23:54:07,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,457 INFO L93 Difference]: Finished difference Result 169 states and 180 transitions. [2022-02-20 23:54:07,457 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 180 transitions. [2022-02-20 23:54:07,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:07,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:07,457 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:07,457 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:07,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 129 states have (on average 1.3565891472868217) internal successors, (175), 163 states have internal predecessors, (175), 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:54:07,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 175 transitions. [2022-02-20 23:54:07,459 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 175 transitions. Word has length 25 [2022-02-20 23:54:07,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:07,459 INFO L470 AbstractCegarLoop]: Abstraction has 164 states and 175 transitions. [2022-02-20 23:54:07,459 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 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:54:07,459 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 175 transitions. [2022-02-20 23:54:07,460 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:54:07,460 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:07,461 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:07,461 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:54:07,461 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:07,461 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:07,461 INFO L85 PathProgramCache]: Analyzing trace with hash 1375479745, now seen corresponding path program 1 times [2022-02-20 23:54:07,462 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:07,462 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1788579034] [2022-02-20 23:54:07,462 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:07,462 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:07,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:07,504 INFO L290 TraceCheckUtils]: 0: Hoare triple {9939#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {9939#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 2: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 3: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 4: Hoare triple {9939#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 5: Hoare triple {9939#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 6: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {9939#true} is VALID [2022-02-20 23:54:07,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {9939#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {9939#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 10: Hoare triple {9939#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 11: Hoare triple {9939#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 13: Hoare triple {9939#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 14: Hoare triple {9939#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {9939#true} is VALID [2022-02-20 23:54:07,506 INFO L290 TraceCheckUtils]: 15: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 16: Hoare triple {9939#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 17: Hoare triple {9939#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 18: Hoare triple {9939#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 19: Hoare triple {9939#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 20: Hoare triple {9939#true} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {9939#true} is VALID [2022-02-20 23:54:07,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {9939#true} assume 0 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {9939#true} is VALID [2022-02-20 23:54:07,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {9939#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1021 {9941#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:07,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {9941#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem11#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1032-4 {9942#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem11#1|)} is VALID [2022-02-20 23:54:07,509 INFO L290 TraceCheckUtils]: 24: Hoare triple {9942#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem11#1|)} assume !(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {9940#false} is VALID [2022-02-20 23:54:07,509 INFO L290 TraceCheckUtils]: 25: Hoare triple {9940#false} assume !false; {9940#false} is VALID [2022-02-20 23:54:07,509 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:54:07,509 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:07,509 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1788579034] [2022-02-20 23:54:07,509 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1788579034] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:07,510 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:07,510 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:07,510 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1547994372] [2022-02-20 23:54:07,510 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:07,510 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:07,510 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:07,510 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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:54:07,526 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:07,526 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:07,526 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:07,526 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:07,526 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:07,527 INFO L87 Difference]: Start difference. First operand 164 states and 175 transitions. Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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:54:07,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,734 INFO L93 Difference]: Finished difference Result 166 states and 176 transitions. [2022-02-20 23:54:07,734 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:07,735 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:07,735 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:07,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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:54:07,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 133 transitions. [2022-02-20 23:54:07,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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:54:07,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 133 transitions. [2022-02-20 23:54:07,736 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 133 transitions. [2022-02-20 23:54:07,812 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:07,814 INFO L225 Difference]: With dead ends: 166 [2022-02-20 23:54:07,814 INFO L226 Difference]: Without dead ends: 166 [2022-02-20 23:54:07,814 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 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:54:07,814 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 20 mSDsluCounter, 168 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 288 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:07,814 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 288 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:54:07,815 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2022-02-20 23:54:07,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 162. [2022-02-20 23:54:07,816 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:07,816 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 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:54:07,816 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 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:54:07,816 INFO L87 Difference]: Start difference. First operand 166 states. Second operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 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:54:07,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,824 INFO L93 Difference]: Finished difference Result 166 states and 176 transitions. [2022-02-20 23:54:07,824 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 176 transitions. [2022-02-20 23:54:07,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:07,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:07,825 INFO L74 IsIncluded]: Start isIncluded. First operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 166 states. [2022-02-20 23:54:07,825 INFO L87 Difference]: Start difference. First operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 166 states. [2022-02-20 23:54:07,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:07,826 INFO L93 Difference]: Finished difference Result 166 states and 176 transitions. [2022-02-20 23:54:07,826 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 176 transitions. [2022-02-20 23:54:07,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:07,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:07,827 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:07,827 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:07,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 162 states, 128 states have (on average 1.34375) internal successors, (172), 161 states have internal predecessors, (172), 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:54:07,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 172 transitions. [2022-02-20 23:54:07,828 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 172 transitions. Word has length 26 [2022-02-20 23:54:07,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:07,828 INFO L470 AbstractCegarLoop]: Abstraction has 162 states and 172 transitions. [2022-02-20 23:54:07,828 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 states have internal predecessors, (26), 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:54:07,828 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 172 transitions. [2022-02-20 23:54:07,829 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:54:07,829 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:07,829 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:07,829 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:54:07,829 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr30REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:07,829 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:07,829 INFO L85 PathProgramCache]: Analyzing trace with hash -752171090, now seen corresponding path program 1 times [2022-02-20 23:54:07,829 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:07,829 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [95140969] [2022-02-20 23:54:07,829 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:07,829 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:07,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:07,881 INFO L290 TraceCheckUtils]: 0: Hoare triple {10607#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {10607#true} is VALID [2022-02-20 23:54:07,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {10607#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 2: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 3: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 4: Hoare triple {10607#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {10607#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 6: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 7: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 8: Hoare triple {10607#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {10607#true} is VALID [2022-02-20 23:54:07,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {10607#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 10: Hoare triple {10607#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 11: Hoare triple {10607#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 12: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 13: Hoare triple {10607#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 14: Hoare triple {10607#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 15: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 16: Hoare triple {10607#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,883 INFO L290 TraceCheckUtils]: 17: Hoare triple {10607#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {10607#true} is VALID [2022-02-20 23:54:07,884 INFO L290 TraceCheckUtils]: 18: Hoare triple {10607#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {10607#true} is VALID [2022-02-20 23:54:07,884 INFO L290 TraceCheckUtils]: 19: Hoare triple {10607#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {10607#true} is VALID [2022-02-20 23:54:07,884 INFO L290 TraceCheckUtils]: 20: Hoare triple {10607#true} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {10607#true} is VALID [2022-02-20 23:54:07,884 INFO L290 TraceCheckUtils]: 21: Hoare triple {10607#true} assume !(0 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {10607#true} is VALID [2022-02-20 23:54:07,884 INFO L290 TraceCheckUtils]: 22: Hoare triple {10607#true} SUMMARY for call write~int(~unnamed1~0~RED, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1025 {10607#true} is VALID [2022-02-20 23:54:07,885 INFO L290 TraceCheckUtils]: 23: Hoare triple {10607#true} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12); {10609#(= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) 1)} is VALID [2022-02-20 23:54:07,885 INFO L290 TraceCheckUtils]: 24: Hoare triple {10609#(= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) 1)} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1026 {10610#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:07,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {10610#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {10610#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:07,886 INFO L290 TraceCheckUtils]: 26: Hoare triple {10610#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1027 {10611#(= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1)} is VALID [2022-02-20 23:54:07,886 INFO L290 TraceCheckUtils]: 27: Hoare triple {10611#(= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) 1)} assume !(1 == #valid[main_#t~mem9#1.base]); {10608#false} is VALID [2022-02-20 23:54:07,886 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:54:07,887 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:07,887 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [95140969] [2022-02-20 23:54:07,887 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [95140969] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:07,887 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:07,887 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:07,887 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [975627728] [2022-02-20 23:54:07,887 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:07,888 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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 28 [2022-02-20 23:54:07,888 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:07,888 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:07,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:07,905 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:07,905 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:07,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:07,905 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:07,906 INFO L87 Difference]: Start difference. First operand 162 states and 172 transitions. Second operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,185 INFO L93 Difference]: Finished difference Result 161 states and 171 transitions. [2022-02-20 23:54:08,185 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:08,185 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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 28 [2022-02-20 23:54:08,185 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:08,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-02-20 23:54:08,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-02-20 23:54:08,186 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-02-20 23:54:08,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:08,272 INFO L225 Difference]: With dead ends: 161 [2022-02-20 23:54:08,272 INFO L226 Difference]: Without dead ends: 161 [2022-02-20 23:54:08,272 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:08,273 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 6 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 163 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 317 SdHoareTripleChecker+Invalid, 165 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 163 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:08,273 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 317 Invalid, 165 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 163 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:08,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-02-20 23:54:08,274 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 161. [2022-02-20 23:54:08,274 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:08,275 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 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:54:08,275 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 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:54:08,275 INFO L87 Difference]: Start difference. First operand 161 states. Second operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 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:54:08,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,276 INFO L93 Difference]: Finished difference Result 161 states and 171 transitions. [2022-02-20 23:54:08,276 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2022-02-20 23:54:08,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:08,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:08,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 161 states. [2022-02-20 23:54:08,277 INFO L87 Difference]: Start difference. First operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 161 states. [2022-02-20 23:54:08,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,279 INFO L93 Difference]: Finished difference Result 161 states and 171 transitions. [2022-02-20 23:54:08,279 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2022-02-20 23:54:08,279 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:08,279 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:08,279 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:08,279 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:08,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 128 states have (on average 1.3359375) internal successors, (171), 160 states have internal predecessors, (171), 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:54:08,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 171 transitions. [2022-02-20 23:54:08,281 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 171 transitions. Word has length 28 [2022-02-20 23:54:08,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:08,281 INFO L470 AbstractCegarLoop]: Abstraction has 161 states and 171 transitions. [2022-02-20 23:54:08,281 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,281 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2022-02-20 23:54:08,281 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-02-20 23:54:08,282 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:08,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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:08,282 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:54:08,282 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:08,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:08,282 INFO L85 PathProgramCache]: Analyzing trace with hash -752171089, now seen corresponding path program 1 times [2022-02-20 23:54:08,282 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:08,282 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1992796112] [2022-02-20 23:54:08,283 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:08,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:08,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:08,340 INFO L290 TraceCheckUtils]: 0: Hoare triple {11262#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {11262#true} is VALID [2022-02-20 23:54:08,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {11262#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,340 INFO L290 TraceCheckUtils]: 2: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 3: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 4: Hoare triple {11262#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {11262#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 6: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {11262#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {11262#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 10: Hoare triple {11262#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11262#true} is VALID [2022-02-20 23:54:08,341 INFO L290 TraceCheckUtils]: 11: Hoare triple {11262#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {11262#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {11262#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 15: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {11262#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {11262#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {11262#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {11262#true} is VALID [2022-02-20 23:54:08,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {11262#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {11262#true} is VALID [2022-02-20 23:54:08,343 INFO L290 TraceCheckUtils]: 20: Hoare triple {11262#true} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {11262#true} is VALID [2022-02-20 23:54:08,343 INFO L290 TraceCheckUtils]: 21: Hoare triple {11262#true} assume !(0 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {11262#true} is VALID [2022-02-20 23:54:08,343 INFO L290 TraceCheckUtils]: 22: Hoare triple {11262#true} SUMMARY for call write~int(~unnamed1~0~RED, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1025 {11262#true} is VALID [2022-02-20 23:54:08,344 INFO L290 TraceCheckUtils]: 23: Hoare triple {11262#true} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12); {11264#(and (= |ULTIMATE.start_main_#t~malloc8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) 12))} is VALID [2022-02-20 23:54:08,344 INFO L290 TraceCheckUtils]: 24: Hoare triple {11264#(and (= |ULTIMATE.start_main_#t~malloc8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) 12))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1026 {11265#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:08,345 INFO L290 TraceCheckUtils]: 25: Hoare triple {11265#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {11265#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:08,345 INFO L290 TraceCheckUtils]: 26: Hoare triple {11265#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1027 {11266#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) 0))} is VALID [2022-02-20 23:54:08,346 INFO L290 TraceCheckUtils]: 27: Hoare triple {11266#(and (= |ULTIMATE.start_main_#t~mem9#1.offset| 0) (= (+ (- 12) (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|)) 0))} assume !(4 + (4 + main_#t~mem9#1.offset) <= #length[main_#t~mem9#1.base] && 0 <= 4 + main_#t~mem9#1.offset); {11263#false} is VALID [2022-02-20 23:54:08,346 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:54:08,346 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:08,346 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1992796112] [2022-02-20 23:54:08,346 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1992796112] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:08,346 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:08,346 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:08,346 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [587635624] [2022-02-20 23:54:08,347 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:08,347 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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 28 [2022-02-20 23:54:08,347 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:08,347 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,366 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:08,367 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:08,367 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:08,367 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:08,367 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:08,367 INFO L87 Difference]: Start difference. First operand 161 states and 171 transitions. Second operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,704 INFO L93 Difference]: Finished difference Result 160 states and 170 transitions. [2022-02-20 23:54:08,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:54:08,704 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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 28 [2022-02-20 23:54:08,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:08,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 123 transitions. [2022-02-20 23:54:08,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 123 transitions. [2022-02-20 23:54:08,706 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 123 transitions. [2022-02-20 23:54:08,784 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:08,785 INFO L225 Difference]: With dead ends: 160 [2022-02-20 23:54:08,786 INFO L226 Difference]: Without dead ends: 160 [2022-02-20 23:54:08,786 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:08,786 INFO L933 BasicCegarLoop]: 119 mSDtfsCounter, 2 mSDsluCounter, 188 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 307 SdHoareTripleChecker+Invalid, 175 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:08,786 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 307 Invalid, 175 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:08,787 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-02-20 23:54:08,788 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 160. [2022-02-20 23:54:08,788 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:08,788 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 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:54:08,788 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 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:54:08,788 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 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:54:08,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,790 INFO L93 Difference]: Finished difference Result 160 states and 170 transitions. [2022-02-20 23:54:08,790 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 170 transitions. [2022-02-20 23:54:08,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:08,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:08,793 INFO L74 IsIncluded]: Start isIncluded. First operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:08,793 INFO L87 Difference]: Start difference. First operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:08,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:08,795 INFO L93 Difference]: Finished difference Result 160 states and 170 transitions. [2022-02-20 23:54:08,795 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 170 transitions. [2022-02-20 23:54:08,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:08,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:08,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:08,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:08,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 160 states, 128 states have (on average 1.328125) internal successors, (170), 159 states have internal predecessors, (170), 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:54:08,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 160 states to 160 states and 170 transitions. [2022-02-20 23:54:08,797 INFO L78 Accepts]: Start accepts. Automaton has 160 states and 170 transitions. Word has length 28 [2022-02-20 23:54:08,797 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:08,797 INFO L470 AbstractCegarLoop]: Abstraction has 160 states and 170 transitions. [2022-02-20 23:54:08,797 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 7.0) internal successors, (28), 5 states have internal predecessors, (28), 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:54:08,798 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 170 transitions. [2022-02-20 23:54:08,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:54:08,798 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:08,798 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:08,798 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:54:08,798 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:08,799 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:08,799 INFO L85 PathProgramCache]: Analyzing trace with hash -1361877815, now seen corresponding path program 1 times [2022-02-20 23:54:08,799 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:08,799 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [982650410] [2022-02-20 23:54:08,799 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:08,799 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:08,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:08,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {11913#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {11913#true} is VALID [2022-02-20 23:54:08,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {11913#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 2: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 3: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 4: Hoare triple {11913#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {11913#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 6: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {11913#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {11913#true} is VALID [2022-02-20 23:54:08,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {11913#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,869 INFO L290 TraceCheckUtils]: 10: Hoare triple {11913#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {11913#true} is VALID [2022-02-20 23:54:08,869 INFO L290 TraceCheckUtils]: 11: Hoare triple {11913#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {11913#true} is VALID [2022-02-20 23:54:08,869 INFO L290 TraceCheckUtils]: 12: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {11913#true} is VALID [2022-02-20 23:54:08,869 INFO L290 TraceCheckUtils]: 13: Hoare triple {11913#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {11913#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {11913#true} is VALID [2022-02-20 23:54:08,870 INFO L290 TraceCheckUtils]: 15: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {11913#true} is VALID [2022-02-20 23:54:08,872 INFO L290 TraceCheckUtils]: 16: Hoare triple {11913#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,872 INFO L290 TraceCheckUtils]: 17: Hoare triple {11913#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {11913#true} is VALID [2022-02-20 23:54:08,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {11913#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {11913#true} is VALID [2022-02-20 23:54:08,873 INFO L290 TraceCheckUtils]: 19: Hoare triple {11913#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,874 INFO L290 TraceCheckUtils]: 20: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,874 INFO L290 TraceCheckUtils]: 21: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume 0 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,875 INFO L290 TraceCheckUtils]: 22: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1021 {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,875 INFO L290 TraceCheckUtils]: 23: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem11#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1032-4 {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,876 INFO L290 TraceCheckUtils]: 25: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:08,876 INFO L290 TraceCheckUtils]: 26: Hoare triple {11915#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1033-4 {11916#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem12#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem12#1.base|))} is VALID [2022-02-20 23:54:08,877 INFO L290 TraceCheckUtils]: 27: Hoare triple {11916#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem12#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem12#1.base|))} assume !(main_~null~0#1.base == main_#t~mem12#1.base && main_~null~0#1.offset == main_#t~mem12#1.offset);havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {11914#false} is VALID [2022-02-20 23:54:08,877 INFO L290 TraceCheckUtils]: 28: Hoare triple {11914#false} assume !false; {11914#false} is VALID [2022-02-20 23:54:08,877 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:54:08,877 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:08,877 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [982650410] [2022-02-20 23:54:08,877 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [982650410] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:08,877 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:08,878 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:08,878 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1968283791] [2022-02-20 23:54:08,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:08,878 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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 29 [2022-02-20 23:54:08,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:08,879 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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:54:08,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:08,896 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:08,897 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:08,897 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:08,897 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:08,897 INFO L87 Difference]: Start difference. First operand 160 states and 170 transitions. Second operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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:54:09,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:09,112 INFO L93 Difference]: Finished difference Result 159 states and 168 transitions. [2022-02-20 23:54:09,112 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:09,112 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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 29 [2022-02-20 23:54:09,112 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:09,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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:54:09,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-02-20 23:54:09,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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:54:09,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 126 transitions. [2022-02-20 23:54:09,114 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 126 transitions. [2022-02-20 23:54:09,188 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:09,189 INFO L225 Difference]: With dead ends: 159 [2022-02-20 23:54:09,189 INFO L226 Difference]: Without dead ends: 159 [2022-02-20 23:54:09,190 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:09,190 INFO L933 BasicCegarLoop]: 111 mSDtfsCounter, 15 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 248 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:09,190 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 248 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:09,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-02-20 23:54:09,192 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 158. [2022-02-20 23:54:09,192 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:09,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 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:54:09,192 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 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:54:09,192 INFO L87 Difference]: Start difference. First operand 159 states. Second operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 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:54:09,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:09,194 INFO L93 Difference]: Finished difference Result 159 states and 168 transitions. [2022-02-20 23:54:09,194 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 168 transitions. [2022-02-20 23:54:09,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:09,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:09,194 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 159 states. [2022-02-20 23:54:09,196 INFO L87 Difference]: Start difference. First operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 159 states. [2022-02-20 23:54:09,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:09,198 INFO L93 Difference]: Finished difference Result 159 states and 168 transitions. [2022-02-20 23:54:09,198 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 168 transitions. [2022-02-20 23:54:09,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:09,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:09,198 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:09,198 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:09,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 127 states have (on average 1.31496062992126) internal successors, (167), 157 states have internal predecessors, (167), 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:54:09,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 167 transitions. [2022-02-20 23:54:09,200 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 167 transitions. Word has length 29 [2022-02-20 23:54:09,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:09,201 INFO L470 AbstractCegarLoop]: Abstraction has 158 states and 167 transitions. [2022-02-20 23:54:09,201 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 7.25) internal successors, (29), 4 states have internal predecessors, (29), 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:54:09,201 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 167 transitions. [2022-02-20 23:54:09,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:54:09,201 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:09,201 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:09,201 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:54:09,202 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr44ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:09,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:09,202 INFO L85 PathProgramCache]: Analyzing trace with hash 1200575117, now seen corresponding path program 1 times [2022-02-20 23:54:09,202 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:09,202 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1149524669] [2022-02-20 23:54:09,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:09,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:09,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:09,336 INFO L290 TraceCheckUtils]: 0: Hoare triple {12556#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {12556#true} is VALID [2022-02-20 23:54:09,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {12556#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:54:09,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:54:09,337 INFO L290 TraceCheckUtils]: 3: Hoare triple {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:54:09,338 INFO L290 TraceCheckUtils]: 4: Hoare triple {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} is VALID [2022-02-20 23:54:09,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {12558#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1)} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {12559#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,339 INFO L290 TraceCheckUtils]: 6: Hoare triple {12559#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {12560#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {12561#(and (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,341 INFO L290 TraceCheckUtils]: 10: Hoare triple {12561#(and (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {12561#(and (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} is VALID [2022-02-20 23:54:09,341 INFO L290 TraceCheckUtils]: 11: Hoare triple {12561#(and (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1) (= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) 1))} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {12562#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} is VALID [2022-02-20 23:54:09,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {12562#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {12563#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:09,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {12563#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {12563#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:09,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {12563#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {12564#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem5#1.base|) (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)))} is VALID [2022-02-20 23:54:09,346 INFO L290 TraceCheckUtils]: 15: Hoare triple {12564#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem5#1.base|) (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem5#1.base|)))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {12565#(not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:09,346 INFO L290 TraceCheckUtils]: 16: Hoare triple {12565#(not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {12565#(not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:09,348 INFO L290 TraceCheckUtils]: 17: Hoare triple {12565#(not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {12566#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem6#1.base|))} is VALID [2022-02-20 23:54:09,348 INFO L290 TraceCheckUtils]: 18: Hoare triple {12566#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem6#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,349 INFO L290 TraceCheckUtils]: 20: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,350 INFO L290 TraceCheckUtils]: 21: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume 0 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,351 INFO L290 TraceCheckUtils]: 22: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1021 {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,351 INFO L290 TraceCheckUtils]: 23: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} SUMMARY for call main_#t~mem11#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1032-4 {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,351 INFO L290 TraceCheckUtils]: 24: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume !!(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,351 INFO L290 TraceCheckUtils]: 25: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} goto; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,352 INFO L290 TraceCheckUtils]: 26: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1033-4 {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,352 INFO L290 TraceCheckUtils]: 27: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume !!(main_~null~0#1.base == main_#t~mem12#1.base && main_~null~0#1.offset == main_#t~mem12#1.offset);havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,352 INFO L290 TraceCheckUtils]: 28: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} goto; {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:09,353 INFO L290 TraceCheckUtils]: 29: Hoare triple {12567#(not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {12557#false} is VALID [2022-02-20 23:54:09,353 INFO L290 TraceCheckUtils]: 30: Hoare triple {12557#false} assume !false; {12557#false} is VALID [2022-02-20 23:54:09,353 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:54:09,353 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:09,353 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1149524669] [2022-02-20 23:54:09,353 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1149524669] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:09,353 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:09,353 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-02-20 23:54:09,354 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [947019289] [2022-02-20 23:54:09,354 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:09,354 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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 31 [2022-02-20 23:54:09,354 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:09,355 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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:54:09,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:09,375 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:54:09,375 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:09,376 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:54:09,376 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:54:09,376 INFO L87 Difference]: Start difference. First operand 158 states and 167 transitions. Second operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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:54:10,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:10,399 INFO L93 Difference]: Finished difference Result 200 states and 209 transitions. [2022-02-20 23:54:10,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-02-20 23:54:10,400 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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 31 [2022-02-20 23:54:10,400 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:10,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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:54:10,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 195 transitions. [2022-02-20 23:54:10,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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:54:10,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 195 transitions. [2022-02-20 23:54:10,403 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 195 transitions. [2022-02-20 23:54:10,534 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:10,536 INFO L225 Difference]: With dead ends: 200 [2022-02-20 23:54:10,536 INFO L226 Difference]: Without dead ends: 200 [2022-02-20 23:54:10,536 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 144 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=204, Invalid=498, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:54:10,537 INFO L933 BasicCegarLoop]: 51 mSDtfsCounter, 261 mSDsluCounter, 253 mSDsCounter, 0 mSdLazyCounter, 537 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 261 SdHoareTripleChecker+Valid, 304 SdHoareTripleChecker+Invalid, 580 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 537 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:10,537 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [261 Valid, 304 Invalid, 580 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 537 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:54:10,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-02-20 23:54:10,539 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 158. [2022-02-20 23:54:10,539 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:10,539 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 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:54:10,539 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 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:54:10,539 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 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:54:10,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:10,542 INFO L93 Difference]: Finished difference Result 200 states and 209 transitions. [2022-02-20 23:54:10,542 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 209 transitions. [2022-02-20 23:54:10,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:10,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:10,542 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 200 states. [2022-02-20 23:54:10,542 INFO L87 Difference]: Start difference. First operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 200 states. [2022-02-20 23:54:10,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:10,545 INFO L93 Difference]: Finished difference Result 200 states and 209 transitions. [2022-02-20 23:54:10,546 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 209 transitions. [2022-02-20 23:54:10,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:10,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:10,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:10,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:10,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 127 states have (on average 1.3070866141732282) internal successors, (166), 157 states have internal predecessors, (166), 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:54:10,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 166 transitions. [2022-02-20 23:54:10,548 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 166 transitions. Word has length 31 [2022-02-20 23:54:10,548 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:10,548 INFO L470 AbstractCegarLoop]: Abstraction has 158 states and 166 transitions. [2022-02-20 23:54:10,548 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 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:54:10,548 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 166 transitions. [2022-02-20 23:54:10,549 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 23:54:10,549 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:10,549 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:10,549 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2022-02-20 23:54:10,549 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr64ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:10,549 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:10,549 INFO L85 PathProgramCache]: Analyzing trace with hash -2047381958, now seen corresponding path program 1 times [2022-02-20 23:54:10,550 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:10,550 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [449640391] [2022-02-20 23:54:10,550 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:10,550 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:10,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:10,619 INFO L290 TraceCheckUtils]: 0: Hoare triple {13358#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {13358#true} is VALID [2022-02-20 23:54:10,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {13358#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {13358#true} is VALID [2022-02-20 23:54:10,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {13358#true} is VALID [2022-02-20 23:54:10,619 INFO L290 TraceCheckUtils]: 3: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {13358#true} is VALID [2022-02-20 23:54:10,620 INFO L290 TraceCheckUtils]: 4: Hoare triple {13358#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {13358#true} is VALID [2022-02-20 23:54:10,620 INFO L290 TraceCheckUtils]: 5: Hoare triple {13358#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {13358#true} is VALID [2022-02-20 23:54:10,620 INFO L290 TraceCheckUtils]: 6: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {13358#true} is VALID [2022-02-20 23:54:10,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {13358#true} is VALID [2022-02-20 23:54:10,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {13358#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,621 INFO L290 TraceCheckUtils]: 10: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,621 INFO L290 TraceCheckUtils]: 11: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,622 INFO L290 TraceCheckUtils]: 12: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,622 INFO L290 TraceCheckUtils]: 13: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,622 INFO L290 TraceCheckUtils]: 14: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} goto; {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:10,623 INFO L290 TraceCheckUtils]: 15: Hoare triple {13360#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {13361#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))))} is VALID [2022-02-20 23:54:10,623 INFO L290 TraceCheckUtils]: 16: Hoare triple {13361#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:10,623 INFO L290 TraceCheckUtils]: 17: Hoare triple {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:10,624 INFO L290 TraceCheckUtils]: 18: Hoare triple {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:10,624 INFO L290 TraceCheckUtils]: 19: Hoare triple {13362#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {13363#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:54:10,624 INFO L290 TraceCheckUtils]: 20: Hoare triple {13363#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem14#1|)} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:10,625 INFO L290 TraceCheckUtils]: 21: Hoare triple {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:10,625 INFO L290 TraceCheckUtils]: 22: Hoare triple {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:10,626 INFO L290 TraceCheckUtils]: 23: Hoare triple {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:10,626 INFO L290 TraceCheckUtils]: 24: Hoare triple {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:10,626 INFO L290 TraceCheckUtils]: 25: Hoare triple {13364#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {13365#(not (= ~unnamed1~0~RED |ULTIMATE.start_main_#t~mem18#1|))} is VALID [2022-02-20 23:54:10,627 INFO L290 TraceCheckUtils]: 26: Hoare triple {13365#(not (= ~unnamed1~0~RED |ULTIMATE.start_main_#t~mem18#1|))} assume ~unnamed1~0~RED == main_#t~mem18#1;havoc main_#t~mem18#1; {13359#false} is VALID [2022-02-20 23:54:10,627 INFO L290 TraceCheckUtils]: 27: Hoare triple {13359#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1060 {13359#false} is VALID [2022-02-20 23:54:10,627 INFO L290 TraceCheckUtils]: 28: Hoare triple {13359#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {13359#false} is VALID [2022-02-20 23:54:10,627 INFO L290 TraceCheckUtils]: 29: Hoare triple {13359#false} assume 0 == main_~list~0#1.offset; {13359#false} is VALID [2022-02-20 23:54:10,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {13359#false} assume !(main_~list~0#1.base < #StackHeapBarrier); {13359#false} is VALID [2022-02-20 23:54:10,627 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:10,627 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:10,628 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [449640391] [2022-02-20 23:54:10,628 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [449640391] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:54:10,628 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1679614837] [2022-02-20 23:54:10,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:10,628 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:10,628 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:54:10,629 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:54:10,631 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 23:54:10,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:10,727 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 2 conjunts are in the unsatisfiable core [2022-02-20 23:54:10,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:10,736 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:10,837 INFO L290 TraceCheckUtils]: 0: Hoare triple {13358#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {13358#true} is VALID [2022-02-20 23:54:10,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {13358#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {13358#true} is VALID [2022-02-20 23:54:10,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {13358#true} is VALID [2022-02-20 23:54:10,837 INFO L290 TraceCheckUtils]: 3: Hoare triple {13358#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {13358#true} is VALID [2022-02-20 23:54:10,837 INFO L290 TraceCheckUtils]: 4: Hoare triple {13358#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {13358#true} is VALID [2022-02-20 23:54:10,838 INFO L290 TraceCheckUtils]: 5: Hoare triple {13358#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,838 INFO L290 TraceCheckUtils]: 6: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,838 INFO L290 TraceCheckUtils]: 8: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,839 INFO L290 TraceCheckUtils]: 9: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,839 INFO L290 TraceCheckUtils]: 10: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,839 INFO L290 TraceCheckUtils]: 11: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,839 INFO L290 TraceCheckUtils]: 12: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,840 INFO L290 TraceCheckUtils]: 13: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,840 INFO L290 TraceCheckUtils]: 14: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} goto; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,840 INFO L290 TraceCheckUtils]: 15: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,841 INFO L290 TraceCheckUtils]: 17: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} goto; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,841 INFO L290 TraceCheckUtils]: 18: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,841 INFO L290 TraceCheckUtils]: 19: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,841 INFO L290 TraceCheckUtils]: 20: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,842 INFO L290 TraceCheckUtils]: 21: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,842 INFO L290 TraceCheckUtils]: 22: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,843 INFO L290 TraceCheckUtils]: 23: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,845 INFO L290 TraceCheckUtils]: 24: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,845 INFO L290 TraceCheckUtils]: 25: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,845 INFO L290 TraceCheckUtils]: 26: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume ~unnamed1~0~RED == main_#t~mem18#1;havoc main_#t~mem18#1; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,846 INFO L290 TraceCheckUtils]: 27: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1060 {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,846 INFO L290 TraceCheckUtils]: 28: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,847 INFO L290 TraceCheckUtils]: 29: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume 0 == main_~list~0#1.offset; {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:10,847 INFO L290 TraceCheckUtils]: 30: Hoare triple {13384#(< |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(main_~list~0#1.base < #StackHeapBarrier); {13359#false} is VALID [2022-02-20 23:54:10,847 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:10,848 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:10,848 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1679614837] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:10,848 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:54:10,848 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [8] total 9 [2022-02-20 23:54:10,848 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [979684526] [2022-02-20 23:54:10,848 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:10,848 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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 31 [2022-02-20 23:54:10,849 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:10,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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:54:10,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:10,869 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:10,869 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:10,870 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:10,870 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:10,870 INFO L87 Difference]: Start difference. First operand 158 states and 166 transitions. Second operand has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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:54:10,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:10,960 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:10,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:10,960 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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 31 [2022-02-20 23:54:10,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:10,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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:54:10,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 134 transitions. [2022-02-20 23:54:10,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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:54:10,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 134 transitions. [2022-02-20 23:54:10,961 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 134 transitions. [2022-02-20 23:54:11,041 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:11,042 INFO L225 Difference]: With dead ends: 160 [2022-02-20 23:54:11,042 INFO L226 Difference]: Without dead ends: 160 [2022-02-20 23:54:11,042 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:11,043 INFO L933 BasicCegarLoop]: 105 mSDtfsCounter, 72 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 35 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:11,043 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 121 Invalid, 35 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:54:11,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-02-20 23:54:11,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 160. [2022-02-20 23:54:11,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:11,045 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 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:54:11,045 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 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:54:11,045 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 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:54:11,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:11,047 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:11,047 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 168 transitions. [2022-02-20 23:54:11,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:11,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:11,047 INFO L74 IsIncluded]: Start isIncluded. First operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:11,047 INFO L87 Difference]: Start difference. First operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:11,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:11,049 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:11,049 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 168 transitions. [2022-02-20 23:54:11,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:11,049 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:11,049 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:11,049 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:11,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 160 states, 129 states have (on average 1.302325581395349) internal successors, (168), 159 states have internal predecessors, (168), 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:54:11,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 160 states to 160 states and 168 transitions. [2022-02-20 23:54:11,051 INFO L78 Accepts]: Start accepts. Automaton has 160 states and 168 transitions. Word has length 31 [2022-02-20 23:54:11,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:11,051 INFO L470 AbstractCegarLoop]: Abstraction has 160 states and 168 transitions. [2022-02-20 23:54:11,051 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 15.5) internal successors, (31), 3 states have internal predecessors, (31), 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:54:11,051 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 168 transitions. [2022-02-20 23:54:11,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:54:11,051 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:11,052 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:11,068 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:11,265 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable19 [2022-02-20 23:54:11,265 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr34REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:11,266 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:11,266 INFO L85 PathProgramCache]: Analyzing trace with hash 739766256, now seen corresponding path program 1 times [2022-02-20 23:54:11,266 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:11,266 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [428840627] [2022-02-20 23:54:11,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:11,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:11,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:11,351 INFO L290 TraceCheckUtils]: 0: Hoare triple {14099#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {14099#true} is VALID [2022-02-20 23:54:11,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {14099#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {14099#true} is VALID [2022-02-20 23:54:11,351 INFO L290 TraceCheckUtils]: 3: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {14099#true} is VALID [2022-02-20 23:54:11,351 INFO L290 TraceCheckUtils]: 4: Hoare triple {14099#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 5: Hoare triple {14099#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 6: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 7: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 8: Hoare triple {14099#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 9: Hoare triple {14099#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 10: Hoare triple {14099#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 11: Hoare triple {14099#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {14099#true} is VALID [2022-02-20 23:54:11,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {14099#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {14099#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 16: Hoare triple {14099#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 17: Hoare triple {14099#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 18: Hoare triple {14099#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {14099#true} is VALID [2022-02-20 23:54:11,353 INFO L290 TraceCheckUtils]: 19: Hoare triple {14099#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:11,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:11,354 INFO L290 TraceCheckUtils]: 21: Hoare triple {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !(0 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:11,354 INFO L290 TraceCheckUtils]: 22: Hoare triple {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~RED, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1025 {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:11,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12); {14102#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) 1))} is VALID [2022-02-20 23:54:11,356 INFO L290 TraceCheckUtils]: 24: Hoare triple {14102#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) 1))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1026 {14103#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:11,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {14103#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {14103#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:11,356 INFO L290 TraceCheckUtils]: 26: Hoare triple {14103#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1027 {14104#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem9#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} is VALID [2022-02-20 23:54:11,357 INFO L290 TraceCheckUtils]: 27: Hoare triple {14104#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem9#1.base|)) (= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem9#1.base, 4 + main_#t~mem9#1.offset, 4); srcloc: L1027-1 {14105#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:11,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {14105#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {14105#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} is VALID [2022-02-20 23:54:11,358 INFO L290 TraceCheckUtils]: 29: Hoare triple {14105#(= (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 1)} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1028 {14106#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} is VALID [2022-02-20 23:54:11,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {14106#(= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) 1)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:11,358 INFO L290 TraceCheckUtils]: 31: Hoare triple {14101#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !(1 == #valid[main_~end~0#1.base]); {14100#false} is VALID [2022-02-20 23:54:11,359 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:54:11,359 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:11,359 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [428840627] [2022-02-20 23:54:11,359 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [428840627] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:11,359 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:11,359 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:54:11,361 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1069397105] [2022-02-20 23:54:11,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:11,362 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 32 [2022-02-20 23:54:11,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:11,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:11,381 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:11,381 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:54:11,381 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:11,382 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:54:11,382 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:11,382 INFO L87 Difference]: Start difference. First operand 160 states and 168 transitions. Second operand has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:11,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:11,950 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:11,950 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:54:11,950 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 32 [2022-02-20 23:54:11,950 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:11,951 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:11,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 127 transitions. [2022-02-20 23:54:11,951 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:11,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 127 transitions. [2022-02-20 23:54:11,952 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 127 transitions. [2022-02-20 23:54:12,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:12,029 INFO L225 Difference]: With dead ends: 160 [2022-02-20 23:54:12,029 INFO L226 Difference]: Without dead ends: 160 [2022-02-20 23:54:12,029 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=46, Invalid=110, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:54:12,030 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 61 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 354 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 313 SdHoareTripleChecker+Invalid, 365 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 354 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:12,030 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [61 Valid, 313 Invalid, 365 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 354 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:12,030 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-02-20 23:54:12,032 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 159. [2022-02-20 23:54:12,032 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:12,032 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 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:54:12,032 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 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:54:12,032 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 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:54:12,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:12,034 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:12,034 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 168 transitions. [2022-02-20 23:54:12,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:12,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:12,034 INFO L74 IsIncluded]: Start isIncluded. First operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:12,035 INFO L87 Difference]: Start difference. First operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 160 states. [2022-02-20 23:54:12,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:12,036 INFO L93 Difference]: Finished difference Result 160 states and 168 transitions. [2022-02-20 23:54:12,036 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 168 transitions. [2022-02-20 23:54:12,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:12,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:12,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:12,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:12,037 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 159 states, 129 states have (on average 1.2945736434108528) internal successors, (167), 158 states have internal predecessors, (167), 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:54:12,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 159 states to 159 states and 167 transitions. [2022-02-20 23:54:12,038 INFO L78 Accepts]: Start accepts. Automaton has 159 states and 167 transitions. Word has length 32 [2022-02-20 23:54:12,038 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:12,038 INFO L470 AbstractCegarLoop]: Abstraction has 159 states and 167 transitions. [2022-02-20 23:54:12,039 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 4.571428571428571) internal successors, (32), 8 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:12,039 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 167 transitions. [2022-02-20 23:54:12,039 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-02-20 23:54:12,039 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:12,039 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:12,039 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20 [2022-02-20 23:54:12,039 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr35REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:12,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:12,040 INFO L85 PathProgramCache]: Analyzing trace with hash 739766257, now seen corresponding path program 1 times [2022-02-20 23:54:12,040 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:12,040 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1561133083] [2022-02-20 23:54:12,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:12,040 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:12,073 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 0: Hoare triple {14758#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {14758#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 3: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 4: Hoare triple {14758#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {14758#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,377 INFO L290 TraceCheckUtils]: 6: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 7: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 8: Hoare triple {14758#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 9: Hoare triple {14758#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 10: Hoare triple {14758#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 11: Hoare triple {14758#true} assume !!(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12); {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 12: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1014 {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 13: Hoare triple {14758#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 14: Hoare triple {14758#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1015 {14758#true} is VALID [2022-02-20 23:54:12,378 INFO L290 TraceCheckUtils]: 15: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, 4 + main_#t~mem5#1.offset, 4); srcloc: L1015-1 {14758#true} is VALID [2022-02-20 23:54:12,379 INFO L290 TraceCheckUtils]: 16: Hoare triple {14758#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,379 INFO L290 TraceCheckUtils]: 17: Hoare triple {14758#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1016 {14758#true} is VALID [2022-02-20 23:54:12,379 INFO L290 TraceCheckUtils]: 18: Hoare triple {14758#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {14758#true} is VALID [2022-02-20 23:54:12,384 INFO L290 TraceCheckUtils]: 19: Hoare triple {14758#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1017 {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:12,384 INFO L290 TraceCheckUtils]: 20: Hoare triple {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 2147483647; {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:12,386 INFO L290 TraceCheckUtils]: 21: Hoare triple {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} assume !(0 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:12,386 INFO L290 TraceCheckUtils]: 22: Hoare triple {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} SUMMARY for call write~int(~unnamed1~0~RED, main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1025 {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} is VALID [2022-02-20 23:54:12,387 INFO L290 TraceCheckUtils]: 23: Hoare triple {14760#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) 1)} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12); {14761#(and (= |ULTIMATE.start_main_#t~malloc8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) 12) (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_~end~0#1.base|)))} is VALID [2022-02-20 23:54:12,388 INFO L290 TraceCheckUtils]: 24: Hoare triple {14761#(and (= |ULTIMATE.start_main_#t~malloc8#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) 12) (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_~end~0#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1026 {14762#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:12,388 INFO L290 TraceCheckUtils]: 25: Hoare triple {14762#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {14762#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:12,389 INFO L290 TraceCheckUtils]: 26: Hoare triple {14762#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1027 {14763#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem9#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:12,390 INFO L290 TraceCheckUtils]: 27: Hoare triple {14763#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem9#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem9#1.base, 4 + main_#t~mem9#1.offset, 4); srcloc: L1027-1 {14764#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:12,390 INFO L290 TraceCheckUtils]: 28: Hoare triple {14764#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {14764#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} is VALID [2022-02-20 23:54:12,390 INFO L290 TraceCheckUtils]: 29: Hoare triple {14764#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) 0) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) 12))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1028 {14765#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} is VALID [2022-02-20 23:54:12,391 INFO L290 TraceCheckUtils]: 30: Hoare triple {14765#(and (= (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|) 12) (= |ULTIMATE.start_main_#t~mem10#1.offset| 0))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {14766#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} is VALID [2022-02-20 23:54:12,391 INFO L290 TraceCheckUtils]: 31: Hoare triple {14766#(and (= |ULTIMATE.start_main_~end~0#1.offset| 0) (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) 12))} assume !(4 + main_~end~0#1.offset <= #length[main_~end~0#1.base] && 0 <= main_~end~0#1.offset); {14759#false} is VALID [2022-02-20 23:54:12,392 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:54:12,392 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:12,392 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1561133083] [2022-02-20 23:54:12,392 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1561133083] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:12,392 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:12,392 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:54:12,392 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [465443699] [2022-02-20 23:54:12,392 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:12,393 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 32 [2022-02-20 23:54:12,393 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:12,393 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:12,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:12,419 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:54:12,419 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:12,419 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:54:12,419 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:12,420 INFO L87 Difference]: Start difference. First operand 159 states and 167 transitions. Second operand has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,250 INFO L93 Difference]: Finished difference Result 155 states and 163 transitions. [2022-02-20 23:54:13,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:54:13,250 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 32 [2022-02-20 23:54:13,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:13,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 145 transitions. [2022-02-20 23:54:13,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 145 transitions. [2022-02-20 23:54:13,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 145 transitions. [2022-02-20 23:54:13,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:13,337 INFO L225 Difference]: With dead ends: 155 [2022-02-20 23:54:13,337 INFO L226 Difference]: Without dead ends: 155 [2022-02-20 23:54:13,337 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=52, Invalid=158, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:54:13,338 INFO L933 BasicCegarLoop]: 100 mSDtfsCounter, 71 mSDsluCounter, 363 mSDsCounter, 0 mSdLazyCounter, 511 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 463 SdHoareTripleChecker+Invalid, 530 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 511 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:13,338 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [71 Valid, 463 Invalid, 530 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 511 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:13,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-02-20 23:54:13,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 143. [2022-02-20 23:54:13,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:13,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,340 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,340 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,341 INFO L93 Difference]: Finished difference Result 155 states and 163 transitions. [2022-02-20 23:54:13,341 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 163 transitions. [2022-02-20 23:54:13,341 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:13,341 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:13,341 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 155 states. [2022-02-20 23:54:13,342 INFO L87 Difference]: Start difference. First operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 155 states. [2022-02-20 23:54:13,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,343 INFO L93 Difference]: Finished difference Result 155 states and 163 transitions. [2022-02-20 23:54:13,343 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 163 transitions. [2022-02-20 23:54:13,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:13,343 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:13,343 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:13,343 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:13,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 120 states have (on average 1.25) internal successors, (150), 142 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 150 transitions. [2022-02-20 23:54:13,345 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 150 transitions. Word has length 32 [2022-02-20 23:54:13,345 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:13,345 INFO L470 AbstractCegarLoop]: Abstraction has 143 states and 150 transitions. [2022-02-20 23:54:13,345 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 4.0) internal successors, (32), 9 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:13,345 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 150 transitions. [2022-02-20 23:54:13,345 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:54:13,345 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:13,345 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:13,346 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21 [2022-02-20 23:54:13,346 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr66REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:13,346 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:13,346 INFO L85 PathProgramCache]: Analyzing trace with hash -439030339, now seen corresponding path program 1 times [2022-02-20 23:54:13,346 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:13,346 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685397972] [2022-02-20 23:54:13,346 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:13,346 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:13,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 0: Hoare triple {15390#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 1: Hoare triple {15390#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 2: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 3: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 4: Hoare triple {15390#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 5: Hoare triple {15390#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {15390#true} is VALID [2022-02-20 23:54:13,421 INFO L290 TraceCheckUtils]: 6: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {15390#true} is VALID [2022-02-20 23:54:13,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {15390#true} is VALID [2022-02-20 23:54:13,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {15390#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,423 INFO L290 TraceCheckUtils]: 9: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,423 INFO L290 TraceCheckUtils]: 10: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,423 INFO L290 TraceCheckUtils]: 11: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,424 INFO L290 TraceCheckUtils]: 12: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,424 INFO L290 TraceCheckUtils]: 13: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,424 INFO L290 TraceCheckUtils]: 14: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} goto; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,425 INFO L290 TraceCheckUtils]: 15: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {15393#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))))} is VALID [2022-02-20 23:54:13,425 INFO L290 TraceCheckUtils]: 16: Hoare triple {15393#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)) |ULTIMATE.start_main_#t~mem13#1|) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8))))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:13,426 INFO L290 TraceCheckUtils]: 17: Hoare triple {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:13,426 INFO L290 TraceCheckUtils]: 18: Hoare triple {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:13,426 INFO L290 TraceCheckUtils]: 19: Hoare triple {15394#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (+ 8 |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {15395#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:54:13,427 INFO L290 TraceCheckUtils]: 20: Hoare triple {15395#(= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) |ULTIMATE.start_main_#t~mem14#1|)} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:13,427 INFO L290 TraceCheckUtils]: 21: Hoare triple {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:13,428 INFO L290 TraceCheckUtils]: 22: Hoare triple {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:13,428 INFO L290 TraceCheckUtils]: 23: Hoare triple {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:13,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} is VALID [2022-02-20 23:54:13,429 INFO L290 TraceCheckUtils]: 25: Hoare triple {15396#(not (= (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)) ~unnamed1~0~RED))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {15397#(not (= ~unnamed1~0~RED |ULTIMATE.start_main_#t~mem18#1|))} is VALID [2022-02-20 23:54:13,429 INFO L290 TraceCheckUtils]: 26: Hoare triple {15397#(not (= ~unnamed1~0~RED |ULTIMATE.start_main_#t~mem18#1|))} assume ~unnamed1~0~RED == main_#t~mem18#1;havoc main_#t~mem18#1; {15391#false} is VALID [2022-02-20 23:54:13,429 INFO L290 TraceCheckUtils]: 27: Hoare triple {15391#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1060 {15391#false} is VALID [2022-02-20 23:54:13,429 INFO L290 TraceCheckUtils]: 28: Hoare triple {15391#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {15391#false} is VALID [2022-02-20 23:54:13,430 INFO L290 TraceCheckUtils]: 29: Hoare triple {15391#false} assume 0 == main_~list~0#1.offset; {15391#false} is VALID [2022-02-20 23:54:13,430 INFO L290 TraceCheckUtils]: 30: Hoare triple {15391#false} assume main_~list~0#1.base < #StackHeapBarrier; {15391#false} is VALID [2022-02-20 23:54:13,430 INFO L290 TraceCheckUtils]: 31: Hoare triple {15391#false} assume 0 == main_~list~0#1.base || 1 == #valid[main_~list~0#1.base];call ULTIMATE.dealloc(main_~list~0#1.base, main_~list~0#1.offset); {15391#false} is VALID [2022-02-20 23:54:13,430 INFO L290 TraceCheckUtils]: 32: Hoare triple {15391#false} assume !(1 == #valid[main_~end~0#1.base]); {15391#false} is VALID [2022-02-20 23:54:13,430 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:13,430 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:13,430 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [685397972] [2022-02-20 23:54:13,430 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [685397972] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:54:13,431 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [996058898] [2022-02-20 23:54:13,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:13,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:13,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:54:13,432 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:54:13,433 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-20 23:54:13,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:13,544 INFO L263 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:54:13,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:13,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:13,580 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:54:13,690 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:54:13,707 INFO L290 TraceCheckUtils]: 0: Hoare triple {15390#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {15390#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 3: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 4: Hoare triple {15390#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {15390#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 6: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {15390#true} is VALID [2022-02-20 23:54:13,708 INFO L290 TraceCheckUtils]: 7: Hoare triple {15390#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {15390#true} is VALID [2022-02-20 23:54:13,709 INFO L290 TraceCheckUtils]: 8: Hoare triple {15390#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,709 INFO L290 TraceCheckUtils]: 9: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,709 INFO L290 TraceCheckUtils]: 10: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,709 INFO L290 TraceCheckUtils]: 11: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,710 INFO L290 TraceCheckUtils]: 12: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,710 INFO L290 TraceCheckUtils]: 13: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,710 INFO L290 TraceCheckUtils]: 14: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} goto; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,710 INFO L290 TraceCheckUtils]: 15: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,711 INFO L290 TraceCheckUtils]: 16: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,711 INFO L290 TraceCheckUtils]: 17: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} goto; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,711 INFO L290 TraceCheckUtils]: 18: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,711 INFO L290 TraceCheckUtils]: 19: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,712 INFO L290 TraceCheckUtils]: 20: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,712 INFO L290 TraceCheckUtils]: 21: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,712 INFO L290 TraceCheckUtils]: 23: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,713 INFO L290 TraceCheckUtils]: 24: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} is VALID [2022-02-20 23:54:13,713 INFO L290 TraceCheckUtils]: 25: Hoare triple {15392#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (+ |ULTIMATE.start_main_~list~0#1.offset| 8)))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {15476#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem18#1|)} is VALID [2022-02-20 23:54:13,713 INFO L290 TraceCheckUtils]: 26: Hoare triple {15476#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem18#1|)} assume ~unnamed1~0~RED == main_#t~mem18#1;havoc main_#t~mem18#1; {15391#false} is VALID [2022-02-20 23:54:13,713 INFO L290 TraceCheckUtils]: 27: Hoare triple {15391#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1060 {15391#false} is VALID [2022-02-20 23:54:13,713 INFO L290 TraceCheckUtils]: 28: Hoare triple {15391#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {15391#false} is VALID [2022-02-20 23:54:13,714 INFO L290 TraceCheckUtils]: 29: Hoare triple {15391#false} assume 0 == main_~list~0#1.offset; {15391#false} is VALID [2022-02-20 23:54:13,714 INFO L290 TraceCheckUtils]: 30: Hoare triple {15391#false} assume main_~list~0#1.base < #StackHeapBarrier; {15391#false} is VALID [2022-02-20 23:54:13,714 INFO L290 TraceCheckUtils]: 31: Hoare triple {15391#false} assume 0 == main_~list~0#1.base || 1 == #valid[main_~list~0#1.base];call ULTIMATE.dealloc(main_~list~0#1.base, main_~list~0#1.offset); {15391#false} is VALID [2022-02-20 23:54:13,714 INFO L290 TraceCheckUtils]: 32: Hoare triple {15391#false} assume !(1 == #valid[main_~end~0#1.base]); {15391#false} is VALID [2022-02-20 23:54:13,714 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:13,714 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:13,714 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [996058898] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:13,714 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 23:54:13,714 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [8] total 9 [2022-02-20 23:54:13,714 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2095853743] [2022-02-20 23:54:13,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:13,714 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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 33 [2022-02-20 23:54:13,715 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:13,715 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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:54:13,735 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:13,735 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:13,735 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:13,735 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:13,735 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:13,735 INFO L87 Difference]: Start difference. First operand 143 states and 150 transitions. Second operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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:54:13,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,902 INFO L93 Difference]: Finished difference Result 152 states and 159 transitions. [2022-02-20 23:54:13,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:13,902 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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 33 [2022-02-20 23:54:13,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:13,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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:54:13,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 137 transitions. [2022-02-20 23:54:13,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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:54:13,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 137 transitions. [2022-02-20 23:54:13,904 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 137 transitions. [2022-02-20 23:54:13,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:13,979 INFO L225 Difference]: With dead ends: 152 [2022-02-20 23:54:13,979 INFO L226 Difference]: Without dead ends: 152 [2022-02-20 23:54:13,980 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=65, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:54:13,981 INFO L933 BasicCegarLoop]: 100 mSDtfsCounter, 6 mSDsluCounter, 166 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:13,981 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 266 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:54:13,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-02-20 23:54:13,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 146. [2022-02-20 23:54:13,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:13,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 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:54:13,983 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 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:54:13,983 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 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:54:13,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,984 INFO L93 Difference]: Finished difference Result 152 states and 159 transitions. [2022-02-20 23:54:13,984 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 159 transitions. [2022-02-20 23:54:13,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:13,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:13,985 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 152 states. [2022-02-20 23:54:13,985 INFO L87 Difference]: Start difference. First operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 152 states. [2022-02-20 23:54:13,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:13,986 INFO L93 Difference]: Finished difference Result 152 states and 159 transitions. [2022-02-20 23:54:13,986 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 159 transitions. [2022-02-20 23:54:13,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:13,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:13,987 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:13,987 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:13,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 123 states have (on average 1.2439024390243902) internal successors, (153), 145 states have internal predecessors, (153), 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:54:13,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 153 transitions. [2022-02-20 23:54:13,988 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 153 transitions. Word has length 33 [2022-02-20 23:54:13,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:13,988 INFO L470 AbstractCegarLoop]: Abstraction has 146 states and 153 transitions. [2022-02-20 23:54:13,988 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 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:54:13,989 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 153 transitions. [2022-02-20 23:54:13,989 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-02-20 23:54:13,989 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:13,989 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, 1, 1, 1, 1, 1] [2022-02-20 23:54:14,008 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:14,195 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:14,195 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr59REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:14,196 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:14,196 INFO L85 PathProgramCache]: Analyzing trace with hash 1958129913, now seen corresponding path program 1 times [2022-02-20 23:54:14,196 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:14,196 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [245013416] [2022-02-20 23:54:14,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:14,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:14,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:14,317 INFO L290 TraceCheckUtils]: 0: Hoare triple {16101#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {16101#true} is VALID [2022-02-20 23:54:14,317 INFO L290 TraceCheckUtils]: 1: Hoare triple {16101#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {16101#true} is VALID [2022-02-20 23:54:14,317 INFO L290 TraceCheckUtils]: 2: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {16101#true} is VALID [2022-02-20 23:54:14,317 INFO L290 TraceCheckUtils]: 3: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {16101#true} is VALID [2022-02-20 23:54:14,317 INFO L290 TraceCheckUtils]: 4: Hoare triple {16101#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 5: Hoare triple {16101#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 6: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {16101#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {16101#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 10: Hoare triple {16101#true} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16101#true} is VALID [2022-02-20 23:54:14,318 INFO L290 TraceCheckUtils]: 11: Hoare triple {16101#true} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {16101#true} is VALID [2022-02-20 23:54:14,319 INFO L290 TraceCheckUtils]: 12: Hoare triple {16101#true} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,319 INFO L290 TraceCheckUtils]: 13: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,320 INFO L290 TraceCheckUtils]: 15: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,321 INFO L290 TraceCheckUtils]: 16: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,321 INFO L290 TraceCheckUtils]: 17: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,322 INFO L290 TraceCheckUtils]: 18: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,323 INFO L290 TraceCheckUtils]: 19: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,324 INFO L290 TraceCheckUtils]: 21: Hoare triple {16103#(and (= (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {16104#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_#t~mem17#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_#t~mem17#1.offset|))} is VALID [2022-02-20 23:54:14,324 INFO L290 TraceCheckUtils]: 22: Hoare triple {16104#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_#t~mem17#1.base|) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_#t~mem17#1.offset|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {16105#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~end~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~end~0#1.base|))} is VALID [2022-02-20 23:54:14,325 INFO L290 TraceCheckUtils]: 23: Hoare triple {16105#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~end~0#1.offset|) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~end~0#1.base|))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,325 INFO L290 TraceCheckUtils]: 24: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,326 INFO L290 TraceCheckUtils]: 25: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,326 INFO L290 TraceCheckUtils]: 26: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem18#1);havoc main_#t~mem18#1; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,326 INFO L290 TraceCheckUtils]: 27: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem21#1.base, main_#t~mem21#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1067 {16107#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} is VALID [2022-02-20 23:54:14,327 INFO L290 TraceCheckUtils]: 28: Hoare triple {16107#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem21#1.base, main_#t~mem21#1.offset;havoc main_#t~mem21#1.base, main_#t~mem21#1.offset; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:14,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume 0 == main_~list~0#1.offset; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:14,328 INFO L290 TraceCheckUtils]: 30: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume main_~list~0#1.base < #StackHeapBarrier; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:14,328 INFO L290 TraceCheckUtils]: 31: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume 0 == main_~list~0#1.base || 1 == #valid[main_~list~0#1.base];call ULTIMATE.dealloc(main_~list~0#1.base, main_~list~0#1.offset);main_~list~0#1.base, main_~list~0#1.offset := main_~end~0#1.base, main_~end~0#1.offset; {16109#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} is VALID [2022-02-20 23:54:14,328 INFO L290 TraceCheckUtils]: 32: Hoare triple {16109#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16102#false} is VALID [2022-02-20 23:54:14,328 INFO L290 TraceCheckUtils]: 33: Hoare triple {16102#false} assume !(1 == #valid[main_~list~0#1.base]); {16102#false} is VALID [2022-02-20 23:54:14,329 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:14,329 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:54:14,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [245013416] [2022-02-20 23:54:14,329 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [245013416] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:54:14,329 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2028513045] [2022-02-20 23:54:14,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:14,329 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:14,330 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:54:14,344 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 23:54:14,346 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-20 23:54:14,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:14,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:54:14,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:14,470 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:14,500 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 11 treesize of output 7 [2022-02-20 23:54:14,504 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 11 treesize of output 7 [2022-02-20 23:54:14,543 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:54:14,543 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:54:14,548 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:14,548 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:54:14,583 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:54:14,584 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 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:54:14,589 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:14,591 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:54:14,789 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:54:14,810 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:54:14,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {16101#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {16101#true} is VALID [2022-02-20 23:54:14,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {16101#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:14,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:14,885 INFO L290 TraceCheckUtils]: 3: Hoare triple {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:14,885 INFO L290 TraceCheckUtils]: 4: Hoare triple {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:14,886 INFO L290 TraceCheckUtils]: 5: Hoare triple {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} is VALID [2022-02-20 23:54:14,886 INFO L290 TraceCheckUtils]: 6: Hoare triple {16116#(= |ULTIMATE.start_main_~null~0#1.offset| 0)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,887 INFO L290 TraceCheckUtils]: 7: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,888 INFO L290 TraceCheckUtils]: 8: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,889 INFO L290 TraceCheckUtils]: 9: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,889 INFO L290 TraceCheckUtils]: 10: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,890 INFO L290 TraceCheckUtils]: 11: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,890 INFO L290 TraceCheckUtils]: 12: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,891 INFO L290 TraceCheckUtils]: 13: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,891 INFO L290 TraceCheckUtils]: 14: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,891 INFO L290 TraceCheckUtils]: 15: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,892 INFO L290 TraceCheckUtils]: 16: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,893 INFO L290 TraceCheckUtils]: 19: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,893 INFO L290 TraceCheckUtils]: 20: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,894 INFO L290 TraceCheckUtils]: 21: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,894 INFO L290 TraceCheckUtils]: 23: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,895 INFO L290 TraceCheckUtils]: 24: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,895 INFO L290 TraceCheckUtils]: 25: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,896 INFO L290 TraceCheckUtils]: 26: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem18#1);havoc main_#t~mem18#1; {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:14,896 INFO L290 TraceCheckUtils]: 27: Hoare triple {16132#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem21#1.base, main_#t~mem21#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1067 {16196#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} is VALID [2022-02-20 23:54:14,896 INFO L290 TraceCheckUtils]: 28: Hoare triple {16196#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem21#1.base, main_#t~mem21#1.offset;havoc main_#t~mem21#1.base, main_#t~mem21#1.offset; {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} is VALID [2022-02-20 23:54:14,897 INFO L290 TraceCheckUtils]: 29: Hoare triple {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} assume 0 == main_~list~0#1.offset; {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} is VALID [2022-02-20 23:54:14,897 INFO L290 TraceCheckUtils]: 30: Hoare triple {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} assume main_~list~0#1.base < #StackHeapBarrier; {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} is VALID [2022-02-20 23:54:14,897 INFO L290 TraceCheckUtils]: 31: Hoare triple {16200#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| 0))} assume 0 == main_~list~0#1.base || 1 == #valid[main_~list~0#1.base];call ULTIMATE.dealloc(main_~list~0#1.base, main_~list~0#1.offset);main_~list~0#1.base, main_~list~0#1.offset := main_~end~0#1.base, main_~end~0#1.offset; {16210#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} is VALID [2022-02-20 23:54:14,898 INFO L290 TraceCheckUtils]: 32: Hoare triple {16210#(and (= |ULTIMATE.start_main_~null~0#1.offset| 0) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16102#false} is VALID [2022-02-20 23:54:14,898 INFO L290 TraceCheckUtils]: 33: Hoare triple {16102#false} assume !(1 == #valid[main_~list~0#1.base]); {16102#false} is VALID [2022-02-20 23:54:14,898 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:14,898 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:54:15,149 INFO L290 TraceCheckUtils]: 33: Hoare triple {16102#false} assume !(1 == #valid[main_~list~0#1.base]); {16102#false} is VALID [2022-02-20 23:54:15,150 INFO L290 TraceCheckUtils]: 32: Hoare triple {16109#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16102#false} is VALID [2022-02-20 23:54:15,150 INFO L290 TraceCheckUtils]: 31: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume 0 == main_~list~0#1.base || 1 == #valid[main_~list~0#1.base];call ULTIMATE.dealloc(main_~list~0#1.base, main_~list~0#1.offset);main_~list~0#1.base, main_~list~0#1.offset := main_~end~0#1.base, main_~end~0#1.offset; {16109#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~list~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~list~0#1.offset|))} is VALID [2022-02-20 23:54:15,150 INFO L290 TraceCheckUtils]: 30: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume main_~list~0#1.base < #StackHeapBarrier; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:15,151 INFO L290 TraceCheckUtils]: 29: Hoare triple {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} assume 0 == main_~list~0#1.offset; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:15,151 INFO L290 TraceCheckUtils]: 28: Hoare triple {16107#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem21#1.base, main_#t~mem21#1.offset;havoc main_#t~mem21#1.base, main_#t~mem21#1.offset; {16108#(and (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_~end~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_~end~0#1.offset|))} is VALID [2022-02-20 23:54:15,152 INFO L290 TraceCheckUtils]: 27: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem21#1.base, main_#t~mem21#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1067 {16107#(and (= |ULTIMATE.start_main_~null~0#1.offset| |ULTIMATE.start_main_#t~mem21#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~mem21#1.base|))} is VALID [2022-02-20 23:54:15,152 INFO L290 TraceCheckUtils]: 26: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem18#1);havoc main_#t~mem18#1; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,152 INFO L290 TraceCheckUtils]: 25: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem18#1 := read~int(main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1058 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,153 INFO L290 TraceCheckUtils]: 24: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,153 INFO L290 TraceCheckUtils]: 23: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,153 INFO L290 TraceCheckUtils]: 22: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,154 INFO L290 TraceCheckUtils]: 21: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4); srcloc: L1045-2 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,154 INFO L290 TraceCheckUtils]: 20: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,155 INFO L290 TraceCheckUtils]: 19: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1045 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,155 INFO L290 TraceCheckUtils]: 18: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,155 INFO L290 TraceCheckUtils]: 17: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,156 INFO L290 TraceCheckUtils]: 16: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,156 INFO L290 TraceCheckUtils]: 15: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~int(main_~end~0#1.base, 8 + main_~end~0#1.offset, 4); srcloc: L1042-4 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,156 INFO L290 TraceCheckUtils]: 14: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,157 INFO L290 TraceCheckUtils]: 12: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,158 INFO L290 TraceCheckUtils]: 10: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume -2147483648 <= main_#t~nondet3#1 && main_#t~nondet3#1 <= 2147483647; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,158 INFO L290 TraceCheckUtils]: 9: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,159 INFO L290 TraceCheckUtils]: 8: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~list~0#1.base, 8 + main_~list~0#1.offset, 4); srcloc: L1005 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, 4 + main_~list~0#1.offset, 4); srcloc: L1004-1 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,160 INFO L290 TraceCheckUtils]: 6: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4); srcloc: L1004 {16106#(and (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:15,160 INFO L290 TraceCheckUtils]: 5: Hoare triple {16101#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L290 TraceCheckUtils]: 4: Hoare triple {16101#true} SUMMARY for call write~int(~unnamed1~0~BLACK, main_~null~0#1.base, 8 + main_~null~0#1.offset, 4); srcloc: L1000 {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L290 TraceCheckUtils]: 3: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, 4 + main_~null~0#1.offset, 4); srcloc: L999-1 {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {16101#true} SUMMARY for call write~$Pointer$(0, 0, main_~null~0#1.base, main_~null~0#1.offset, 4); srcloc: L999 {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {16101#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L290 TraceCheckUtils]: 0: Hoare triple {16101#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(20, 2); {16101#true} is VALID [2022-02-20 23:54:15,161 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:15,161 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2028513045] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:54:15,161 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:54:15,162 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 7, 6] total 14 [2022-02-20 23:54:15,162 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1652861101] [2022-02-20 23:54:15,162 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:54:15,163 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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 34 [2022-02-20 23:54:15,163 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:15,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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:54:15,218 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:15,218 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:54:15,218 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:54:15,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:54:15,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=149, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:54:15,218 INFO L87 Difference]: Start difference. First operand 146 states and 153 transitions. Second operand has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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:54:16,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:16,399 INFO L93 Difference]: Finished difference Result 194 states and 204 transitions. [2022-02-20 23:54:16,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:54:16,399 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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 34 [2022-02-20 23:54:16,399 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:16,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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:54:16,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 191 transitions. [2022-02-20 23:54:16,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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:54:16,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 191 transitions. [2022-02-20 23:54:16,401 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 191 transitions. [2022-02-20 23:54:16,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 191 edges. 191 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:16,524 INFO L225 Difference]: With dead ends: 194 [2022-02-20 23:54:16,524 INFO L226 Difference]: Without dead ends: 194 [2022-02-20 23:54:16,524 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 62 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=102, Invalid=404, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:54:16,525 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 250 mSDsluCounter, 487 mSDsCounter, 0 mSdLazyCounter, 644 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 250 SdHoareTripleChecker+Valid, 560 SdHoareTripleChecker+Invalid, 670 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 644 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:16,525 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [250 Valid, 560 Invalid, 670 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 644 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:54:16,526 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states. [2022-02-20 23:54:16,527 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 157. [2022-02-20 23:54:16,527 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:16,527 INFO L82 GeneralOperation]: Start isEquivalent. First operand 194 states. Second operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 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:54:16,528 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 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:54:16,528 INFO L87 Difference]: Start difference. First operand 194 states. Second operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 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:54:16,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:16,529 INFO L93 Difference]: Finished difference Result 194 states and 204 transitions. [2022-02-20 23:54:16,529 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 204 transitions. [2022-02-20 23:54:16,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:16,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:16,530 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 194 states. [2022-02-20 23:54:16,530 INFO L87 Difference]: Start difference. First operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 194 states. [2022-02-20 23:54:16,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:16,532 INFO L93 Difference]: Finished difference Result 194 states and 204 transitions. [2022-02-20 23:54:16,532 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 204 transitions. [2022-02-20 23:54:16,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:16,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:16,532 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:16,532 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:16,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 134 states have (on average 1.2388059701492538) internal successors, (166), 156 states have internal predecessors, (166), 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:54:16,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 166 transitions. [2022-02-20 23:54:16,534 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 166 transitions. Word has length 34 [2022-02-20 23:54:16,534 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:16,534 INFO L470 AbstractCegarLoop]: Abstraction has 157 states and 166 transitions. [2022-02-20 23:54:16,534 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 6.0) internal successors, (84), 14 states have internal predecessors, (84), 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:54:16,534 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 166 transitions. [2022-02-20 23:54:16,534 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:54:16,535 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:16,535 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:16,551 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:16,749 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:54:16,749 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr76ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:16,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:16,750 INFO L85 PathProgramCache]: Analyzing trace with hash 572484811, now seen corresponding path program 1 times [2022-02-20 23:54:16,750 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:54:16,750 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1731917577] [2022-02-20 23:54:16,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:16,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:54:16,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:54:16,769 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 23:54:16,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 23:54:16,813 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 23:54:16,813 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 23:54:16,814 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr76ASSERT_VIOLATIONMEMORY_LEAK (76 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0REQUIRES_VIOLATION (75 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1REQUIRES_VIOLATION (74 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2REQUIRES_VIOLATION (73 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr3REQUIRES_VIOLATION (72 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr4REQUIRES_VIOLATION (71 of 77 remaining) [2022-02-20 23:54:16,815 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr5REQUIRES_VIOLATION (70 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr6REQUIRES_VIOLATION (69 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr7REQUIRES_VIOLATION (68 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr8REQUIRES_VIOLATION (67 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr9REQUIRES_VIOLATION (66 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr10REQUIRES_VIOLATION (65 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr11REQUIRES_VIOLATION (64 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr12REQUIRES_VIOLATION (63 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr13REQUIRES_VIOLATION (62 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr14REQUIRES_VIOLATION (61 of 77 remaining) [2022-02-20 23:54:16,816 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr15REQUIRES_VIOLATION (60 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr16REQUIRES_VIOLATION (59 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr17REQUIRES_VIOLATION (58 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr18REQUIRES_VIOLATION (57 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr19REQUIRES_VIOLATION (56 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr20REQUIRES_VIOLATION (55 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr21REQUIRES_VIOLATION (54 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr22REQUIRES_VIOLATION (53 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr23REQUIRES_VIOLATION (52 of 77 remaining) [2022-02-20 23:54:16,817 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr24REQUIRES_VIOLATION (51 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr25REQUIRES_VIOLATION (50 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr26REQUIRES_VIOLATION (49 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr27REQUIRES_VIOLATION (48 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr28REQUIRES_VIOLATION (47 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr29REQUIRES_VIOLATION (46 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr30REQUIRES_VIOLATION (45 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr31REQUIRES_VIOLATION (44 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr32REQUIRES_VIOLATION (43 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr33REQUIRES_VIOLATION (42 of 77 remaining) [2022-02-20 23:54:16,818 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr34REQUIRES_VIOLATION (41 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr35REQUIRES_VIOLATION (40 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr36REQUIRES_VIOLATION (39 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr37REQUIRES_VIOLATION (38 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr38REQUIRES_VIOLATION (37 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr39REQUIRES_VIOLATION (36 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK (35 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr41REQUIRES_VIOLATION (34 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr42REQUIRES_VIOLATION (33 of 77 remaining) [2022-02-20 23:54:16,819 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK (32 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr44ASSERT_VIOLATIONMEMORY_LEAK (31 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr45ASSERT_VIOLATIONMEMORY_LEAK (30 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr46REQUIRES_VIOLATION (29 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr47REQUIRES_VIOLATION (28 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr48ASSERT_VIOLATIONMEMORY_LEAK (27 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr49REQUIRES_VIOLATION (26 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr50REQUIRES_VIOLATION (25 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr51REQUIRES_VIOLATION (24 of 77 remaining) [2022-02-20 23:54:16,820 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr52REQUIRES_VIOLATION (23 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr53ASSERT_VIOLATIONMEMORY_LEAK (22 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr54REQUIRES_VIOLATION (21 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr55REQUIRES_VIOLATION (20 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr56ASSERT_VIOLATIONMEMORY_LEAK (19 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr57REQUIRES_VIOLATION (18 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr58REQUIRES_VIOLATION (17 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr59REQUIRES_VIOLATION (16 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr60REQUIRES_VIOLATION (15 of 77 remaining) [2022-02-20 23:54:16,821 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr61REQUIRES_VIOLATION (14 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr62REQUIRES_VIOLATION (13 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr63ASSERT_VIOLATIONMEMORY_FREE (12 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr64ASSERT_VIOLATIONMEMORY_FREE (11 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr65ASSERT_VIOLATIONMEMORY_FREE (10 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr66REQUIRES_VIOLATION (9 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr67REQUIRES_VIOLATION (8 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr68ASSERT_VIOLATIONMEMORY_FREE (7 of 77 remaining) [2022-02-20 23:54:16,822 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr69ASSERT_VIOLATIONMEMORY_FREE (6 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr70ASSERT_VIOLATIONMEMORY_FREE (5 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr71REQUIRES_VIOLATION (4 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr72REQUIRES_VIOLATION (3 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr73ASSERT_VIOLATIONMEMORY_FREE (2 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr74ASSERT_VIOLATIONMEMORY_FREE (1 of 77 remaining) [2022-02-20 23:54:16,823 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr75ASSERT_VIOLATIONMEMORY_FREE (0 of 77 remaining) [2022-02-20 23:54:16,823 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24 [2022-02-20 23:54:16,825 INFO L732 BasicCegarLoop]: Path program histogram: [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:54:16,827 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 23:54:16,867 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 11:54:16 BoogieIcfgContainer [2022-02-20 23:54:16,867 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 23:54:16,868 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 23:54:16,868 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 23:54:16,868 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 23:54:16,869 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:53:56" (3/4) ... [2022-02-20 23:54:16,870 INFO L140 WitnessPrinter]: No result that supports witness generation found [2022-02-20 23:54:16,870 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 23:54:16,872 INFO L158 Benchmark]: Toolchain (without parser) took 21137.29ms. Allocated memory was 90.2MB in the beginning and 207.6MB in the end (delta: 117.4MB). Free memory was 51.6MB in the beginning and 76.2MB in the end (delta: -24.6MB). Peak memory consumption was 92.6MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 90.2MB. Free memory is still 68.8MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: CACSL2BoogieTranslator took 369.31ms. Allocated memory is still 90.2MB. Free memory was 51.4MB in the beginning and 57.3MB in the end (delta: -5.9MB). Peak memory consumption was 6.6MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: Boogie Procedure Inliner took 44.40ms. Allocated memory is still 90.2MB. Free memory was 57.1MB in the beginning and 54.5MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: Boogie Preprocessor took 55.10ms. Allocated memory is still 90.2MB. Free memory was 54.5MB in the beginning and 52.1MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: RCFGBuilder took 620.50ms. Allocated memory was 90.2MB in the beginning and 117.4MB in the end (delta: 27.3MB). Free memory was 52.1MB in the beginning and 80.9MB in the end (delta: -28.8MB). Peak memory consumption was 26.7MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,873 INFO L158 Benchmark]: TraceAbstraction took 20040.08ms. Allocated memory was 117.4MB in the beginning and 207.6MB in the end (delta: 90.2MB). Free memory was 80.3MB in the beginning and 77.2MB in the end (delta: 3.0MB). Peak memory consumption was 92.8MB. Max. memory is 16.1GB. [2022-02-20 23:54:16,874 INFO L158 Benchmark]: Witness Printer took 2.53ms. Allocated memory is still 207.6MB. Free memory was 77.2MB in the beginning and 76.2MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 23:54:16,879 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 90.2MB. Free memory is still 68.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 369.31ms. Allocated memory is still 90.2MB. Free memory was 51.4MB in the beginning and 57.3MB in the end (delta: -5.9MB). Peak memory consumption was 6.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 44.40ms. Allocated memory is still 90.2MB. Free memory was 57.1MB in the beginning and 54.5MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 55.10ms. Allocated memory is still 90.2MB. Free memory was 54.5MB in the beginning and 52.1MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 620.50ms. Allocated memory was 90.2MB in the beginning and 117.4MB in the end (delta: 27.3MB). Free memory was 52.1MB in the beginning and 80.9MB in the end (delta: -28.8MB). Peak memory consumption was 26.7MB. Max. memory is 16.1GB. * TraceAbstraction took 20040.08ms. Allocated memory was 117.4MB in the beginning and 207.6MB in the end (delta: 90.2MB). Free memory was 80.3MB in the beginning and 77.2MB in the end (delta: 3.0MB). Peak memory consumption was 92.8MB. Max. memory is 16.1GB. * Witness Printer took 2.53ms. Allocated memory is still 207.6MB. Free memory was 77.2MB in the beginning and 76.2MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 996]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: overapproximation of memtrack at line 996. Possible FailurePath: [L998] struct TSLL* null = malloc(sizeof(struct TSLL)); [L999] null->next = ((void*)0) VAL [null={-1:0}] [L1000] null->prev = ((void*)0) VAL [null={-1:0}] [L1001] null->colour = BLACK VAL [null={-1:0}] [L1003] struct TSLL* list = malloc(sizeof(struct TSLL)); [L1004] list->next = null VAL [list={-2:0}, null={-1:0}] [L1005] list->prev = null VAL [list={-2:0}, null={-1:0}] [L1006] list->colour = BLACK VAL [list={-2:0}, null={-1:0}] [L1008] struct TSLL* end = list; VAL [end={-2:0}, list={-2:0}, null={-1:0}] [L1011] COND FALSE !(__VERIFIER_nondet_int()) [L1037] end = null [L1038] end = list VAL [end={-2:0}, list={-2:0}, null={-1:0}] [L1041] COND FALSE !(!(null != end)) VAL [end={-2:0}, list={-2:0}, null={-1:0}] [L1042] EXPR end->colour VAL [end={-2:0}, end->colour=1, list={-2:0}, null={-1:0}] [L1042] COND FALSE !(!(BLACK == end->colour)) [L1043] COND TRUE null != end VAL [end={-2:0}, list={-2:0}, null={-1:0}] [L1045] EXPR end->colour VAL [end={-2:0}, end->colour=1, list={-2:0}, null={-1:0}] [L1045] COND FALSE !(RED == end->colour) [L1052] EXPR end->next VAL [end={-2:0}, end->next={-1:0}, list={-2:0}, null={-1:0}] [L1052] end = end->next [L1043] COND FALSE !(null != end) VAL [end={-1:0}, list={-2:0}, null={-1:0}] [L1056] COND TRUE null != list VAL [end={-1:0}, list={-2:0}, null={-1:0}] [L1058] EXPR list->colour VAL [end={-1:0}, list={-2:0}, list->colour=1, null={-1:0}] [L1058] COND FALSE !(RED == list->colour) [L1067] EXPR list->next VAL [end={-1:0}, list={-2:0}, list->next={-1:0}, null={-1:0}] [L1067] end = list->next [L1068] free(list) VAL [end={-1:0}, list={-2:0}, null={-1:0}] [L1068] free(list) VAL [end={-1:0}, list={-2:0}, null={-1:0}] [L1068] free(list) [L1069] list = end VAL [end={-1:0}, list={-1:0}, null={-1:0}] [L1056] COND FALSE !(null != list) VAL [end={-1:0}, list={-1:0}, null={-1:0}] [L1073] return 0; VAL [\result=0, end={-1:0}, list={-1:0}, null={-1:0}] - UnprovableResult [Line: 999]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 999]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1000]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1000]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1001]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1001]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1004]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1004]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1005]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1005]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1006]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1006]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1014]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1014]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1015]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1015]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1015]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1015]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1016]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1016]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1017]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1017]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1021]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1021]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1025]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1025]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1026]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1026]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1027]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1027]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1027]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1027]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1028]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1028]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1029]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1029]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1030]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1030]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1032]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1032]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1032]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1033]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1033]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1033]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1034]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1041]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1042]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1042]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1042]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1045]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1045]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1047]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1047]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1048]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1049]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1049]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1049]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: Not analyzed. - UnprovableResult [Line: 1052]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1052]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1058]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1058]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1060]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1060]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1061]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1061]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1061]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1062]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1062]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1063]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1063]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1063]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1067]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1067]: Unable to prove that pointer dereference always succeeds Unable to prove that pointer dereference always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1068]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1068]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - UnprovableResult [Line: 1068]: Unable to prove that free always succeeds Unable to prove that free always succeeds Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 166 locations, 77 error locations. Started 1 CEGAR loops. OverallTime: 19.9s, OverallIterations: 25, TraceHistogramMax: 2, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 13.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 3139 SdHoareTripleChecker+Valid, 3.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 3139 mSDsluCounter, 6313 SdHoareTripleChecker+Invalid, 3.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 4081 mSDsCounter, 322 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 5725 IncrementalHoareTripleChecker+Invalid, 6047 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 322 mSolverCounterUnsat, 2232 mSDtfsCounter, 5725 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 396 GetRequests, 202 SyntacticMatches, 4 SemanticMatches, 190 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 354 ImplicationChecksByTransitivity, 1.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=166occurred in iteration=0, InterpolantAutomatonStates: 173, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.3s AutomataMinimizationTime, 24 MinimizatonAttempts, 348 StatesRemovedByMinimization, 17 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 3.3s InterpolantComputationTime, 663 NumberOfCodeBlocks, 663 NumberOfCodeBlocksAsserted, 29 NumberOfCheckSat, 657 ConstructedInterpolants, 0 QuantifiedInterpolants, 4384 SizeOfPredicates, 15 NumberOfNonLiveVariables, 840 ConjunctsInSsa, 74 ConjunctsInUnsatCore, 30 InterpolantComputations, 22 PerfectInterpolantSequences, 10/19 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2022-02-20 23:54:16,918 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 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/forester-heap/dll-rb-sentinel-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 503e46fe74670dc8b1fd2e8b2c5a408fc01c83cb421ff9aefb8796417315d291 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:54:18,494 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:54:18,495 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:54:18,514 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:54:18,514 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:54:18,515 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:54:18,516 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:54:18,517 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:54:18,518 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:54:18,519 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:54:18,520 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:54:18,527 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:54:18,528 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:54:18,530 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:54:18,531 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:54:18,531 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:54:18,532 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:54:18,532 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:54:18,533 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:54:18,535 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:54:18,536 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:54:18,536 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:54:18,537 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:54:18,538 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:54:18,540 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:54:18,540 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:54:18,540 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:54:18,541 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:54:18,541 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:54:18,542 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:54:18,542 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:54:18,543 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:54:18,543 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:54:18,544 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:54:18,545 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:54:18,545 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:54:18,545 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:54:18,545 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:54:18,546 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:54:18,546 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:54:18,547 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:54:18,547 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:54:18,567 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:54:18,570 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:54:18,571 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:54:18,571 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:54:18,571 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:54:18,572 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:54:18,572 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:54:18,573 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:54:18,573 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:54:18,573 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:54:18,574 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 23:54:18,575 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:54:18,576 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:54:18,576 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:54:18,576 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:54:18,576 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:54:18,576 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:54:18,576 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:54:18,577 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:54:18,577 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 23:54:18,577 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 23:54:18,577 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 23:54:18,577 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 -> 503e46fe74670dc8b1fd2e8b2c5a408fc01c83cb421ff9aefb8796417315d291 [2022-02-20 23:54:18,820 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:54:18,836 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:54:18,839 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:54:18,839 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:54:18,840 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:54:18,841 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i [2022-02-20 23:54:18,894 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b4c23eba/9319216f11024db7af3449c273d39f66/FLAG5f7fcff1a [2022-02-20 23:54:19,324 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:54:19,325 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i [2022-02-20 23:54:19,336 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b4c23eba/9319216f11024db7af3449c273d39f66/FLAG5f7fcff1a [2022-02-20 23:54:19,346 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b4c23eba/9319216f11024db7af3449c273d39f66 [2022-02-20 23:54:19,348 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:54:19,355 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:54:19,358 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:54:19,359 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:54:19,364 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:54:19,368 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,369 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6487c903 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19, skipping insertion in model container [2022-02-20 23:54:19,369 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,374 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:54:19,414 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:54:19,616 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22665,22678] [2022-02-20 23:54:19,619 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22735,22748] [2022-02-20 23:54:19,619 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22799,22812] [2022-02-20 23:54:19,620 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22894,22907] [2022-02-20 23:54:19,620 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22966,22979] [2022-02-20 23:54:19,621 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23105,23118] [2022-02-20 23:54:19,622 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23179,23192] [2022-02-20 23:54:19,625 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:54:19,632 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:54:19,654 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22665,22678] [2022-02-20 23:54:19,655 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22735,22748] [2022-02-20 23:54:19,656 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22799,22812] [2022-02-20 23:54:19,656 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22894,22907] [2022-02-20 23:54:19,657 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[22966,22979] [2022-02-20 23:54:19,658 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23105,23118] [2022-02-20 23:54:19,658 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/forester-heap/dll-rb-sentinel-1.i[23179,23192] [2022-02-20 23:54:19,660 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:54:19,678 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:54:19,679 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19 WrapperNode [2022-02-20 23:54:19,679 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:54:19,679 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:54:19,680 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:54:19,680 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:54:19,684 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:54:19" (1/1) ... [2022-02-20 23:54:19,694 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:54:19" (1/1) ... [2022-02-20 23:54:19,727 INFO L137 Inliner]: procedures = 122, calls = 43, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 164 [2022-02-20 23:54:19,727 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:54:19,728 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:54:19,729 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:54:19,729 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:54:19,734 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,735 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,752 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,753 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,761 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,764 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,765 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,768 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:54:19,768 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:54:19,768 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:54:19,768 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:54:19,769 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (1/1) ... [2022-02-20 23:54:19,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:54:19,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:54:19,789 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:54:19,798 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:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:54:19,825 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2022-02-20 23:54:19,826 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 23:54:19,826 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:54:19,826 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:54:19,894 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:54:19,895 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:54:20,367 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:54:20,373 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:54:20,374 INFO L299 CfgBuilder]: Removed 17 assume(true) statements. [2022-02-20 23:54:20,375 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:54:20 BoogieIcfgContainer [2022-02-20 23:54:20,376 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:54:20,377 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:54:20,377 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:54:20,379 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:54:20,379 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:54:19" (1/3) ... [2022-02-20 23:54:20,381 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67adae74 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:54:20, skipping insertion in model container [2022-02-20 23:54:20,381 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:54:19" (2/3) ... [2022-02-20 23:54:20,381 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67adae74 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:54:20, skipping insertion in model container [2022-02-20 23:54:20,381 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:54:20" (3/3) ... [2022-02-20 23:54:20,382 INFO L111 eAbstractionObserver]: Analyzing ICFG dll-rb-sentinel-1.i [2022-02-20 23:54:20,385 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:54:20,385 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 77 error locations. [2022-02-20 23:54:20,423 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:54:20,427 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:54:20,427 INFO L340 AbstractCegarLoop]: Starting to check reachability of 77 error locations. [2022-02-20 23:54:20,439 INFO L276 IsEmpty]: Start isEmpty. Operand has 164 states, 86 states have (on average 2.244186046511628) internal successors, (193), 163 states have internal predecessors, (193), 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:54:20,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2022-02-20 23:54:20,442 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:20,443 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1] [2022-02-20 23:54:20,443 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:20,446 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:20,446 INFO L85 PathProgramCache]: Analyzing trace with hash 29857, now seen corresponding path program 1 times [2022-02-20 23:54:20,454 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:20,455 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [644084435] [2022-02-20 23:54:20,455 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:20,455 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:20,455 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:20,457 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:54:20,458 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:54:20,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:20,518 INFO L263 TraceCheckSpWp]: Trace formula consists of 23 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:54:20,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:20,542 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:20,596 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:54:20,609 INFO L290 TraceCheckUtils]: 0: Hoare triple {167#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(20bv32, 2bv32); {167#true} is VALID [2022-02-20 23:54:20,610 INFO L290 TraceCheckUtils]: 1: Hoare triple {167#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {175#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:20,611 INFO L290 TraceCheckUtils]: 2: Hoare triple {175#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_~null~0#1.base]); {168#false} is VALID [2022-02-20 23:54:20,611 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:54:20,611 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:20,612 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:20,612 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [644084435] [2022-02-20 23:54:20,613 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [644084435] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:20,613 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:20,613 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:54:20,614 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [535961229] [2022-02-20 23:54:20,614 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:20,618 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:54:20,619 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:20,620 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:20,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:20,626 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:20,627 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:20,644 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:20,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:54:20,649 INFO L87 Difference]: Start difference. First operand has 164 states, 86 states have (on average 2.244186046511628) internal successors, (193), 163 states have internal predecessors, (193), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:21,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:21,211 INFO L93 Difference]: Finished difference Result 191 states and 197 transitions. [2022-02-20 23:54:21,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:21,211 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:54:21,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:21,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:21,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 225 transitions. [2022-02-20 23:54:21,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:21,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 225 transitions. [2022-02-20 23:54:21,236 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 225 transitions. [2022-02-20 23:54:21,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:21,476 INFO L225 Difference]: With dead ends: 191 [2022-02-20 23:54:21,477 INFO L226 Difference]: Without dead ends: 187 [2022-02-20 23:54:21,478 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:54:21,481 INFO L933 BasicCegarLoop]: 87 mSDtfsCounter, 149 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 149 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 103 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:21,482 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [149 Valid, 110 Invalid, 103 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:21,494 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2022-02-20 23:54:21,511 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 159. [2022-02-20 23:54:21,512 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:21,518 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 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:54:21,519 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 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:54:21,520 INFO L87 Difference]: Start difference. First operand 187 states. Second operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 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:54:21,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:21,526 INFO L93 Difference]: Finished difference Result 187 states and 193 transitions. [2022-02-20 23:54:21,526 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 193 transitions. [2022-02-20 23:54:21,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:21,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:21,527 INFO L74 IsIncluded]: Start isIncluded. First operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 187 states. [2022-02-20 23:54:21,528 INFO L87 Difference]: Start difference. First operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 187 states. [2022-02-20 23:54:21,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:21,533 INFO L93 Difference]: Finished difference Result 187 states and 193 transitions. [2022-02-20 23:54:21,533 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 193 transitions. [2022-02-20 23:54:21,534 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:21,534 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:21,534 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:21,534 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:21,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 159 states, 85 states have (on average 1.9294117647058824) internal successors, (164), 158 states have internal predecessors, (164), 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:54:21,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 159 states to 159 states and 164 transitions. [2022-02-20 23:54:21,538 INFO L78 Accepts]: Start accepts. Automaton has 159 states and 164 transitions. Word has length 3 [2022-02-20 23:54:21,539 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:21,539 INFO L470 AbstractCegarLoop]: Abstraction has 159 states and 164 transitions. [2022-02-20 23:54:21,539 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:21,539 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 164 transitions. [2022-02-20 23:54:21,539 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2022-02-20 23:54:21,539 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:21,539 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1] [2022-02-20 23:54:21,565 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Ended with exit code 0 [2022-02-20 23:54:21,749 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:54:21,749 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:21,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:21,750 INFO L85 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2022-02-20 23:54:21,750 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:21,750 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1619194517] [2022-02-20 23:54:21,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:21,750 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:21,750 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:21,753 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:54:21,755 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:54:21,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:21,788 INFO L263 TraceCheckSpWp]: Trace formula consists of 23 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:54:21,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:21,796 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:21,841 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:54:21,862 INFO L290 TraceCheckUtils]: 0: Hoare triple {902#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(20bv32, 2bv32); {902#true} is VALID [2022-02-20 23:54:21,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {902#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {910#(and (= (select |#length| |ULTIMATE.start_main_~null~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:21,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {910#(and (= (select |#length| |ULTIMATE.start_main_~null~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~null~0#1.offset), #length[main_~null~0#1.base]) && ~bvule32(main_~null~0#1.offset, ~bvadd32(4bv32, main_~null~0#1.offset))) && ~bvule32(0bv32, main_~null~0#1.offset)); {903#false} is VALID [2022-02-20 23:54:21,864 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:54:21,864 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:21,865 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:21,865 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1619194517] [2022-02-20 23:54:21,865 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1619194517] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:21,865 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:21,865 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:54:21,865 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [31851561] [2022-02-20 23:54:21,866 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:21,866 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:54:21,866 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:21,867 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:21,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:21,871 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:21,871 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:21,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:21,871 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:54:21,872 INFO L87 Difference]: Start difference. First operand 159 states and 164 transitions. Second operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:22,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:22,318 INFO L93 Difference]: Finished difference Result 156 states and 161 transitions. [2022-02-20 23:54:22,318 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:22,318 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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 3 [2022-02-20 23:54:22,318 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:22,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:22,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 164 transitions. [2022-02-20 23:54:22,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:22,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 164 transitions. [2022-02-20 23:54:22,321 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 164 transitions. [2022-02-20 23:54:22,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 164 edges. 164 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:22,483 INFO L225 Difference]: With dead ends: 156 [2022-02-20 23:54:22,483 INFO L226 Difference]: Without dead ends: 156 [2022-02-20 23:54:22,484 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 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:54:22,484 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 156 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 78 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:22,485 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [156 Valid, 89 Invalid, 78 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:22,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-02-20 23:54:22,488 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 156. [2022-02-20 23:54:22,490 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:22,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 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:54:22,491 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 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:54:22,491 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 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:54:22,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:22,495 INFO L93 Difference]: Finished difference Result 156 states and 161 transitions. [2022-02-20 23:54:22,495 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 161 transitions. [2022-02-20 23:54:22,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:22,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:22,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 156 states. [2022-02-20 23:54:22,500 INFO L87 Difference]: Start difference. First operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 156 states. [2022-02-20 23:54:22,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:22,509 INFO L93 Difference]: Finished difference Result 156 states and 161 transitions. [2022-02-20 23:54:22,509 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 161 transitions. [2022-02-20 23:54:22,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:22,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:22,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:22,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:22,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 156 states, 85 states have (on average 1.8941176470588235) internal successors, (161), 155 states have internal predecessors, (161), 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:54:22,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 161 transitions. [2022-02-20 23:54:22,513 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 161 transitions. Word has length 3 [2022-02-20 23:54:22,513 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:22,514 INFO L470 AbstractCegarLoop]: Abstraction has 156 states and 161 transitions. [2022-02-20 23:54:22,514 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 1.5) internal successors, (3), 3 states have internal predecessors, (3), 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:54:22,514 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 161 transitions. [2022-02-20 23:54:22,515 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:54:22,515 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:22,515 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:22,524 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:54:22,721 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:54:22,721 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:22,722 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:22,722 INFO L85 PathProgramCache]: Analyzing trace with hash 1803026981, now seen corresponding path program 1 times [2022-02-20 23:54:22,722 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:22,722 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [557647706] [2022-02-20 23:54:22,723 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:22,723 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:22,723 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:22,724 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:54:22,725 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:54:22,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:22,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 23:54:22,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:22,807 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:22,822 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:54:22,826 INFO L290 TraceCheckUtils]: 0: Hoare triple {1537#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(20bv32, 2bv32); {1537#true} is VALID [2022-02-20 23:54:22,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {1537#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {1537#true} is VALID [2022-02-20 23:54:22,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {1537#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {1537#true} is VALID [2022-02-20 23:54:22,827 INFO L290 TraceCheckUtils]: 3: Hoare triple {1537#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {1537#true} is VALID [2022-02-20 23:54:22,827 INFO L290 TraceCheckUtils]: 4: Hoare triple {1537#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {1537#true} is VALID [2022-02-20 23:54:22,828 INFO L290 TraceCheckUtils]: 5: Hoare triple {1537#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {1557#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:22,828 INFO L290 TraceCheckUtils]: 6: Hoare triple {1557#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_~list~0#1.base]); {1538#false} is VALID [2022-02-20 23:54:22,828 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:54:22,828 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:22,828 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:22,829 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [557647706] [2022-02-20 23:54:22,829 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [557647706] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:22,838 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:22,838 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:54:22,838 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [843802358] [2022-02-20 23:54:22,838 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:22,838 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:54:22,839 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:22,839 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:22,846 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:54:22,846 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:22,846 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:22,847 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:22,847 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:54:22,847 INFO L87 Difference]: Start difference. First operand 156 states and 161 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:23,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:23,248 INFO L93 Difference]: Finished difference Result 155 states and 160 transitions. [2022-02-20 23:54:23,248 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:23,248 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:54:23,248 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:23,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:23,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 168 transitions. [2022-02-20 23:54:23,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:23,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 168 transitions. [2022-02-20 23:54:23,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 168 transitions. [2022-02-20 23:54:23,397 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:23,399 INFO L225 Difference]: With dead ends: 155 [2022-02-20 23:54:23,399 INFO L226 Difference]: Without dead ends: 155 [2022-02-20 23:54:23,399 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 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:54:23,400 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 133 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 133 SdHoareTripleChecker+Valid, 95 SdHoareTripleChecker+Invalid, 92 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:23,400 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [133 Valid, 95 Invalid, 92 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:23,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-02-20 23:54:23,404 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 151. [2022-02-20 23:54:23,404 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:23,404 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:23,404 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:23,405 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:23,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:23,407 INFO L93 Difference]: Finished difference Result 155 states and 160 transitions. [2022-02-20 23:54:23,407 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 160 transitions. [2022-02-20 23:54:23,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:23,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:23,407 INFO L74 IsIncluded]: Start isIncluded. First operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 155 states. [2022-02-20 23:54:23,408 INFO L87 Difference]: Start difference. First operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 155 states. [2022-02-20 23:54:23,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:23,410 INFO L93 Difference]: Finished difference Result 155 states and 160 transitions. [2022-02-20 23:54:23,410 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 160 transitions. [2022-02-20 23:54:23,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:23,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:23,410 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:23,410 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:23,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 87 states have (on average 1.8160919540229885) internal successors, (158), 150 states have internal predecessors, (158), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:23,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 158 transitions. [2022-02-20 23:54:23,419 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 158 transitions. Word has length 7 [2022-02-20 23:54:23,419 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:23,419 INFO L470 AbstractCegarLoop]: Abstraction has 151 states and 158 transitions. [2022-02-20 23:54:23,420 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:23,420 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 158 transitions. [2022-02-20 23:54:23,420 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:54:23,420 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:23,420 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:23,429 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:54:23,626 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:54:23,627 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:23,627 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:23,627 INFO L85 PathProgramCache]: Analyzing trace with hash 1803026982, now seen corresponding path program 1 times [2022-02-20 23:54:23,628 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:23,628 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1149402756] [2022-02-20 23:54:23,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:23,628 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:23,628 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:23,629 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:54:23,630 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:54:23,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:23,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 23:54:23,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:23,690 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:23,713 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:54:23,720 INFO L290 TraceCheckUtils]: 0: Hoare triple {2176#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(20bv32, 2bv32); {2176#true} is VALID [2022-02-20 23:54:23,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {2176#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {2176#true} is VALID [2022-02-20 23:54:23,721 INFO L290 TraceCheckUtils]: 2: Hoare triple {2176#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {2176#true} is VALID [2022-02-20 23:54:23,721 INFO L290 TraceCheckUtils]: 3: Hoare triple {2176#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {2176#true} is VALID [2022-02-20 23:54:23,721 INFO L290 TraceCheckUtils]: 4: Hoare triple {2176#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {2176#true} is VALID [2022-02-20 23:54:23,722 INFO L290 TraceCheckUtils]: 5: Hoare triple {2176#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {2196#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:23,722 INFO L290 TraceCheckUtils]: 6: Hoare triple {2196#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~list~0#1.offset), #length[main_~list~0#1.base]) && ~bvule32(main_~list~0#1.offset, ~bvadd32(4bv32, main_~list~0#1.offset))) && ~bvule32(0bv32, main_~list~0#1.offset)); {2177#false} is VALID [2022-02-20 23:54:23,723 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:54:23,723 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:23,723 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:23,724 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1149402756] [2022-02-20 23:54:23,724 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1149402756] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:23,724 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:23,724 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:54:23,724 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1887213495] [2022-02-20 23:54:23,724 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:23,725 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:54:23,725 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:23,725 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:23,732 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:54:23,732 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:23,732 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:23,733 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:23,733 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:54:23,733 INFO L87 Difference]: Start difference. First operand 151 states and 158 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:24,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:24,168 INFO L93 Difference]: Finished difference Result 168 states and 174 transitions. [2022-02-20 23:54:24,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:24,169 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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 7 [2022-02-20 23:54:24,169 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:24,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:24,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 182 transitions. [2022-02-20 23:54:24,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:24,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 182 transitions. [2022-02-20 23:54:24,172 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 182 transitions. [2022-02-20 23:54:24,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 182 edges. 182 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:24,336 INFO L225 Difference]: With dead ends: 168 [2022-02-20 23:54:24,336 INFO L226 Difference]: Without dead ends: 168 [2022-02-20 23:54:24,336 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 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:54:24,338 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 129 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 129 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:24,339 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [129 Valid, 102 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:24,342 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-20 23:54:24,350 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 155. [2022-02-20 23:54:24,350 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:24,351 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 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:54:24,351 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 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:54:24,351 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 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:54:24,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:24,354 INFO L93 Difference]: Finished difference Result 168 states and 174 transitions. [2022-02-20 23:54:24,354 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 174 transitions. [2022-02-20 23:54:24,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:24,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:24,355 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:24,355 INFO L87 Difference]: Start difference. First operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:24,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:24,357 INFO L93 Difference]: Finished difference Result 168 states and 174 transitions. [2022-02-20 23:54:24,357 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 174 transitions. [2022-02-20 23:54:24,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:24,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:24,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:24,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:24,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 94 states have (on average 1.7234042553191489) internal successors, (162), 154 states have internal predecessors, (162), 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:54:24,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 162 transitions. [2022-02-20 23:54:24,360 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 162 transitions. Word has length 7 [2022-02-20 23:54:24,361 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:24,361 INFO L470 AbstractCegarLoop]: Abstraction has 155 states and 162 transitions. [2022-02-20 23:54:24,361 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 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:54:24,361 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 162 transitions. [2022-02-20 23:54:24,361 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:54:24,361 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:24,361 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:24,370 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:54:24,567 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:54:24,568 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:24,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:24,568 INFO L85 PathProgramCache]: Analyzing trace with hash -1483594255, now seen corresponding path program 1 times [2022-02-20 23:54:24,568 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:24,568 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1246315104] [2022-02-20 23:54:24,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:24,569 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:24,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:24,569 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:54:24,572 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:54:24,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:24,653 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 23:54:24,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:24,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:24,682 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:54:24,738 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:54:24,738 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:54:24,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {2858#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(20bv32, 2bv32); {2858#true} is VALID [2022-02-20 23:54:24,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {2858#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {2858#true} is VALID [2022-02-20 23:54:24,749 INFO L290 TraceCheckUtils]: 2: Hoare triple {2858#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {2858#true} is VALID [2022-02-20 23:54:24,749 INFO L290 TraceCheckUtils]: 3: Hoare triple {2858#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {2858#true} is VALID [2022-02-20 23:54:24,750 INFO L290 TraceCheckUtils]: 4: Hoare triple {2858#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {2858#true} is VALID [2022-02-20 23:54:24,750 INFO L290 TraceCheckUtils]: 5: Hoare triple {2858#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,751 INFO L290 TraceCheckUtils]: 6: Hoare triple {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,751 INFO L290 TraceCheckUtils]: 7: Hoare triple {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {2878#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {2891#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,753 INFO L290 TraceCheckUtils]: 10: Hoare triple {2891#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {2891#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:24,753 INFO L290 TraceCheckUtils]: 11: Hoare triple {2891#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_~end~0#1.base]); {2859#false} is VALID [2022-02-20 23:54:24,753 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:24,753 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:24,754 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:24,754 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1246315104] [2022-02-20 23:54:24,754 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1246315104] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:24,754 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:24,754 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:54:24,754 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [114546739] [2022-02-20 23:54:24,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:24,755 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 12 [2022-02-20 23:54:24,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:24,755 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:24,775 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:24,775 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:24,775 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:24,776 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:24,776 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:24,776 INFO L87 Difference]: Start difference. First operand 155 states and 162 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:25,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:25,322 INFO L93 Difference]: Finished difference Result 156 states and 164 transitions. [2022-02-20 23:54:25,322 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:54:25,323 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 12 [2022-02-20 23:54:25,323 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:25,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:25,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 172 transitions. [2022-02-20 23:54:25,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:25,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 172 transitions. [2022-02-20 23:54:25,326 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 172 transitions. [2022-02-20 23:54:25,486 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:25,487 INFO L225 Difference]: With dead ends: 156 [2022-02-20 23:54:25,488 INFO L226 Difference]: Without dead ends: 156 [2022-02-20 23:54:25,488 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 SyntacticMatches, 1 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:54:25,488 INFO L933 BasicCegarLoop]: 65 mSDtfsCounter, 211 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 211 SdHoareTripleChecker+Valid, 79 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:25,488 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [211 Valid, 79 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:25,489 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-02-20 23:54:25,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 142. [2022-02-20 23:54:25,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:25,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 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:54:25,491 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 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:54:25,492 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 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:54:25,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:25,494 INFO L93 Difference]: Finished difference Result 156 states and 164 transitions. [2022-02-20 23:54:25,494 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 164 transitions. [2022-02-20 23:54:25,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:25,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:25,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 156 states. [2022-02-20 23:54:25,495 INFO L87 Difference]: Start difference. First operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 156 states. [2022-02-20 23:54:25,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:25,499 INFO L93 Difference]: Finished difference Result 156 states and 164 transitions. [2022-02-20 23:54:25,499 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 164 transitions. [2022-02-20 23:54:25,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:25,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:25,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:25,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:25,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 142 states, 96 states have (on average 1.5729166666666667) internal successors, (151), 141 states have internal predecessors, (151), 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:54:25,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 142 states to 142 states and 151 transitions. [2022-02-20 23:54:25,502 INFO L78 Accepts]: Start accepts. Automaton has 142 states and 151 transitions. Word has length 12 [2022-02-20 23:54:25,502 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:25,502 INFO L470 AbstractCegarLoop]: Abstraction has 142 states and 151 transitions. [2022-02-20 23:54:25,502 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:25,503 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 151 transitions. [2022-02-20 23:54:25,503 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:54:25,503 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:25,503 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:25,522 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:54:25,714 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:54:25,714 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:25,714 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:25,715 INFO L85 PathProgramCache]: Analyzing trace with hash -1483594254, now seen corresponding path program 1 times [2022-02-20 23:54:25,715 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:25,715 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1951269537] [2022-02-20 23:54:25,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:25,715 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:25,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:25,716 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:54:25,717 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:54:25,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:25,806 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:54:25,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:25,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:25,838 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:54:25,908 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:25,908 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 14 [2022-02-20 23:54:25,919 INFO L290 TraceCheckUtils]: 0: Hoare triple {3509#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(20bv32, 2bv32); {3509#true} is VALID [2022-02-20 23:54:25,919 INFO L290 TraceCheckUtils]: 1: Hoare triple {3509#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {3509#true} is VALID [2022-02-20 23:54:25,920 INFO L290 TraceCheckUtils]: 2: Hoare triple {3509#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {3509#true} is VALID [2022-02-20 23:54:25,920 INFO L290 TraceCheckUtils]: 3: Hoare triple {3509#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {3509#true} is VALID [2022-02-20 23:54:25,920 INFO L290 TraceCheckUtils]: 4: Hoare triple {3509#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {3509#true} is VALID [2022-02-20 23:54:25,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {3509#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,922 INFO L290 TraceCheckUtils]: 6: Hoare triple {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,923 INFO L290 TraceCheckUtils]: 8: Hoare triple {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {3529#(and (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_~list~0#1.base|)) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {3542#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,924 INFO L290 TraceCheckUtils]: 10: Hoare triple {3542#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {3542#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:25,925 INFO L290 TraceCheckUtils]: 11: Hoare triple {3542#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~end~0#1.offset), #length[main_~end~0#1.base]) && ~bvule32(main_~end~0#1.offset, ~bvadd32(4bv32, main_~end~0#1.offset))) && ~bvule32(0bv32, main_~end~0#1.offset)); {3510#false} is VALID [2022-02-20 23:54:25,925 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:54:25,925 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:25,925 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:25,926 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1951269537] [2022-02-20 23:54:25,926 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1951269537] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:25,926 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:25,926 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:54:25,926 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [518695337] [2022-02-20 23:54:25,926 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:25,926 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 12 [2022-02-20 23:54:25,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:25,927 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:25,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:25,943 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:25,943 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:25,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:25,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:25,943 INFO L87 Difference]: Start difference. First operand 142 states and 151 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:26,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:26,749 INFO L93 Difference]: Finished difference Result 180 states and 190 transitions. [2022-02-20 23:54:26,749 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:26,749 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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 12 [2022-02-20 23:54:26,749 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:26,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:26,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 197 transitions. [2022-02-20 23:54:26,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:26,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 197 transitions. [2022-02-20 23:54:26,752 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 197 transitions. [2022-02-20 23:54:26,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:26,935 INFO L225 Difference]: With dead ends: 180 [2022-02-20 23:54:26,936 INFO L226 Difference]: Without dead ends: 180 [2022-02-20 23:54:26,936 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 SyntacticMatches, 1 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:54:26,936 INFO L933 BasicCegarLoop]: 70 mSDtfsCounter, 175 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 181 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 175 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 193 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 181 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:26,936 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [175 Valid, 117 Invalid, 193 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 181 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:26,937 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2022-02-20 23:54:26,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 151. [2022-02-20 23:54:26,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:26,942 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 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:54:26,942 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 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:54:26,942 INFO L87 Difference]: Start difference. First operand 180 states. Second operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 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:54:26,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:26,945 INFO L93 Difference]: Finished difference Result 180 states and 190 transitions. [2022-02-20 23:54:26,945 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 190 transitions. [2022-02-20 23:54:26,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:26,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:26,946 INFO L74 IsIncluded]: Start isIncluded. First operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 180 states. [2022-02-20 23:54:26,946 INFO L87 Difference]: Start difference. First operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 180 states. [2022-02-20 23:54:26,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:26,949 INFO L93 Difference]: Finished difference Result 180 states and 190 transitions. [2022-02-20 23:54:26,949 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 190 transitions. [2022-02-20 23:54:26,949 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:26,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:26,949 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:26,949 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:26,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 106 states have (on average 1.5377358490566038) internal successors, (163), 150 states have internal predecessors, (163), 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:54:26,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 163 transitions. [2022-02-20 23:54:26,952 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 163 transitions. Word has length 12 [2022-02-20 23:54:26,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:26,952 INFO L470 AbstractCegarLoop]: Abstraction has 151 states and 163 transitions. [2022-02-20 23:54:26,952 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 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:54:26,952 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 163 transitions. [2022-02-20 23:54:26,952 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:54:26,952 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:26,953 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:26,960 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:54:27,159 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:54:27,160 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr45ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:27,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:27,160 INFO L85 PathProgramCache]: Analyzing trace with hash 195115107, now seen corresponding path program 1 times [2022-02-20 23:54:27,160 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:27,160 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2141730262] [2022-02-20 23:54:27,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:27,161 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:27,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:27,162 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:54:27,163 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:54:27,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:27,225 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:54:27,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:27,230 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:27,238 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:54:27,261 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:54:27,262 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:54:27,288 INFO L290 TraceCheckUtils]: 0: Hoare triple {4241#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(20bv32, 2bv32); {4241#true} is VALID [2022-02-20 23:54:27,289 INFO L290 TraceCheckUtils]: 1: Hoare triple {4241#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:27,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:27,289 INFO L290 TraceCheckUtils]: 3: Hoare triple {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:27,289 INFO L290 TraceCheckUtils]: 4: Hoare triple {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:27,290 INFO L290 TraceCheckUtils]: 5: Hoare triple {4249#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,293 INFO L290 TraceCheckUtils]: 6: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,294 INFO L290 TraceCheckUtils]: 7: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,294 INFO L290 TraceCheckUtils]: 8: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,295 INFO L290 TraceCheckUtils]: 9: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,295 INFO L290 TraceCheckUtils]: 10: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,297 INFO L290 TraceCheckUtils]: 11: Hoare triple {4262#(not (= |ULTIMATE.start_main_~list~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {4281#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:27,298 INFO L290 TraceCheckUtils]: 12: Hoare triple {4281#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {4242#false} is VALID [2022-02-20 23:54:27,298 INFO L290 TraceCheckUtils]: 13: Hoare triple {4242#false} assume !false; {4242#false} is VALID [2022-02-20 23:54:27,298 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:54:27,298 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:27,298 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:27,298 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2141730262] [2022-02-20 23:54:27,298 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2141730262] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:27,298 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:27,299 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:54:27,299 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1270066326] [2022-02-20 23:54:27,299 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:27,299 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:54:27,299 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:27,299 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:27,313 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:54:27,314 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:27,314 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:27,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:27,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:27,314 INFO L87 Difference]: Start difference. First operand 151 states and 163 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:28,114 INFO L93 Difference]: Finished difference Result 194 states and 203 transitions. [2022-02-20 23:54:28,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:54:28,114 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:54:28,115 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:28,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 206 transitions. [2022-02-20 23:54:28,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 206 transitions. [2022-02-20 23:54:28,117 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 206 transitions. [2022-02-20 23:54:28,294 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:28,296 INFO L225 Difference]: With dead ends: 194 [2022-02-20 23:54:28,296 INFO L226 Difference]: Without dead ends: 194 [2022-02-20 23:54:28,296 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:28,297 INFO L933 BasicCegarLoop]: 71 mSDtfsCounter, 296 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 296 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 200 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:28,297 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [296 Valid, 149 Invalid, 200 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:28,297 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 194 states. [2022-02-20 23:54:28,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 194 to 149. [2022-02-20 23:54:28,300 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:28,300 INFO L82 GeneralOperation]: Start isEquivalent. First operand 194 states. Second operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,300 INFO L74 IsIncluded]: Start isIncluded. First operand 194 states. Second operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,301 INFO L87 Difference]: Start difference. First operand 194 states. Second operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:28,304 INFO L93 Difference]: Finished difference Result 194 states and 203 transitions. [2022-02-20 23:54:28,304 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 203 transitions. [2022-02-20 23:54:28,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:28,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:28,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 194 states. [2022-02-20 23:54:28,305 INFO L87 Difference]: Start difference. First operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 194 states. [2022-02-20 23:54:28,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:28,308 INFO L93 Difference]: Finished difference Result 194 states and 203 transitions. [2022-02-20 23:54:28,308 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 203 transitions. [2022-02-20 23:54:28,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:28,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:28,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:28,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:28,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 149 states, 105 states have (on average 1.5142857142857142) internal successors, (159), 148 states have internal predecessors, (159), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 159 transitions. [2022-02-20 23:54:28,311 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 159 transitions. Word has length 14 [2022-02-20 23:54:28,311 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:28,311 INFO L470 AbstractCegarLoop]: Abstraction has 149 states and 159 transitions. [2022-02-20 23:54:28,311 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:28,311 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 159 transitions. [2022-02-20 23:54:28,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:54:28,311 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:28,311 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:28,320 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:54:28,515 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:54:28,515 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr16REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:28,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:28,516 INFO L85 PathProgramCache]: Analyzing trace with hash 1751997431, now seen corresponding path program 1 times [2022-02-20 23:54:28,516 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:28,516 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1224714480] [2022-02-20 23:54:28,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:28,516 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:28,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:28,517 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:54:28,519 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:54:28,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:28,615 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:54:28,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:28,623 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:28,644 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:54:28,660 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 11 treesize of output 7 [2022-02-20 23:54:28,680 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 17 treesize of output 9 [2022-02-20 23:54:28,686 INFO L290 TraceCheckUtils]: 0: Hoare triple {5022#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(20bv32, 2bv32); {5022#true} is VALID [2022-02-20 23:54:28,686 INFO L290 TraceCheckUtils]: 1: Hoare triple {5022#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {5022#true} is VALID [2022-02-20 23:54:28,686 INFO L290 TraceCheckUtils]: 2: Hoare triple {5022#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {5022#true} is VALID [2022-02-20 23:54:28,686 INFO L290 TraceCheckUtils]: 3: Hoare triple {5022#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 4: Hoare triple {5022#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {5022#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 6: Hoare triple {5022#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {5022#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 8: Hoare triple {5022#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {5022#true} is VALID [2022-02-20 23:54:28,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {5022#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {5022#true} is VALID [2022-02-20 23:54:28,688 INFO L290 TraceCheckUtils]: 10: Hoare triple {5022#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {5057#(= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:28,689 INFO L290 TraceCheckUtils]: 11: Hoare triple {5057#(= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {5061#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:28,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {5061#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {5061#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:28,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {5061#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {5068#(= (select |#valid| |ULTIMATE.start_main_#t~mem5#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:28,691 INFO L290 TraceCheckUtils]: 14: Hoare triple {5068#(= (select |#valid| |ULTIMATE.start_main_#t~mem5#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_#t~mem5#1.base]); {5023#false} is VALID [2022-02-20 23:54:28,691 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:54:28,691 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:28,691 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:28,691 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1224714480] [2022-02-20 23:54:28,692 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1224714480] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:28,692 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:28,692 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:28,692 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1834023870] [2022-02-20 23:54:28,692 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:28,692 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:54:28,692 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:28,693 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:28,708 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:28,708 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:28,708 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:28,709 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:28,709 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:28,709 INFO L87 Difference]: Start difference. First operand 149 states and 159 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:29,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:29,625 INFO L93 Difference]: Finished difference Result 148 states and 157 transitions. [2022-02-20 23:54:29,625 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:29,625 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:54:29,625 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:29,625 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:29,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 133 transitions. [2022-02-20 23:54:29,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:29,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 133 transitions. [2022-02-20 23:54:29,627 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 133 transitions. [2022-02-20 23:54:29,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:29,729 INFO L225 Difference]: With dead ends: 148 [2022-02-20 23:54:29,729 INFO L226 Difference]: Without dead ends: 148 [2022-02-20 23:54:29,729 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:29,729 INFO L933 BasicCegarLoop]: 125 mSDtfsCounter, 9 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 334 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:29,730 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 334 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:29,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-02-20 23:54:29,731 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 148. [2022-02-20 23:54:29,731 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:29,732 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 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:54:29,732 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 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:54:29,732 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 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:54:29,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:29,734 INFO L93 Difference]: Finished difference Result 148 states and 157 transitions. [2022-02-20 23:54:29,735 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 157 transitions. [2022-02-20 23:54:29,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:29,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:29,735 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 148 states. [2022-02-20 23:54:29,735 INFO L87 Difference]: Start difference. First operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 148 states. [2022-02-20 23:54:29,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:29,738 INFO L93 Difference]: Finished difference Result 148 states and 157 transitions. [2022-02-20 23:54:29,738 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 157 transitions. [2022-02-20 23:54:29,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:29,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:29,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:29,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:29,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 105 states have (on average 1.4952380952380953) internal successors, (157), 147 states have internal predecessors, (157), 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:54:29,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 157 transitions. [2022-02-20 23:54:29,763 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 157 transitions. Word has length 15 [2022-02-20 23:54:29,763 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:29,763 INFO L470 AbstractCegarLoop]: Abstraction has 148 states and 157 transitions. [2022-02-20 23:54:29,763 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:29,763 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 157 transitions. [2022-02-20 23:54:29,764 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:54:29,764 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:29,764 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:29,773 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:54:29,971 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:54:29,971 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr17REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:29,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:29,972 INFO L85 PathProgramCache]: Analyzing trace with hash 1751997432, now seen corresponding path program 1 times [2022-02-20 23:54:29,972 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:29,972 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2008806763] [2022-02-20 23:54:29,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:29,972 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:29,972 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:29,973 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:54:29,974 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:54:30,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:30,049 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:54:30,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:30,061 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:30,093 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:54:30,118 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 11 treesize of output 7 [2022-02-20 23:54:30,124 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 11 treesize of output 7 [2022-02-20 23:54:30,161 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 17 treesize of output 9 [2022-02-20 23:54:30,164 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:54:30,175 INFO L290 TraceCheckUtils]: 0: Hoare triple {5667#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(20bv32, 2bv32); {5667#true} is VALID [2022-02-20 23:54:30,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {5667#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {5667#true} is VALID [2022-02-20 23:54:30,175 INFO L290 TraceCheckUtils]: 2: Hoare triple {5667#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {5667#true} is VALID [2022-02-20 23:54:30,175 INFO L290 TraceCheckUtils]: 3: Hoare triple {5667#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {5667#true} is VALID [2022-02-20 23:54:30,175 INFO L290 TraceCheckUtils]: 4: Hoare triple {5667#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {5667#true} is VALID [2022-02-20 23:54:30,176 INFO L290 TraceCheckUtils]: 5: Hoare triple {5667#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {5667#true} is VALID [2022-02-20 23:54:30,176 INFO L290 TraceCheckUtils]: 6: Hoare triple {5667#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {5667#true} is VALID [2022-02-20 23:54:30,176 INFO L290 TraceCheckUtils]: 7: Hoare triple {5667#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {5667#true} is VALID [2022-02-20 23:54:30,176 INFO L290 TraceCheckUtils]: 8: Hoare triple {5667#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {5667#true} is VALID [2022-02-20 23:54:30,176 INFO L290 TraceCheckUtils]: 9: Hoare triple {5667#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {5667#true} is VALID [2022-02-20 23:54:30,177 INFO L290 TraceCheckUtils]: 10: Hoare triple {5667#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {5702#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:54:30,179 INFO L290 TraceCheckUtils]: 11: Hoare triple {5702#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv12 32)))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {5706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:30,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {5706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {5706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:30,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {5706#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {5713#(and (= |ULTIMATE.start_main_#t~mem5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~mem5#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:54:30,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {5713#(and (= |ULTIMATE.start_main_#t~mem5#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~mem5#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem5#1.offset)), #length[main_#t~mem5#1.base]) && ~bvule32(~bvadd32(4bv32, main_#t~mem5#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem5#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, main_#t~mem5#1.offset))); {5668#false} is VALID [2022-02-20 23:54:30,180 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:54:30,180 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:30,180 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:30,181 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2008806763] [2022-02-20 23:54:30,181 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2008806763] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:30,181 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:30,181 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:30,181 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [358196554] [2022-02-20 23:54:30,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:30,182 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:54:30,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:30,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:30,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:30,210 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:30,210 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:30,211 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:30,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:30,211 INFO L87 Difference]: Start difference. First operand 148 states and 157 transitions. Second operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:31,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:31,264 INFO L93 Difference]: Finished difference Result 147 states and 155 transitions. [2022-02-20 23:54:31,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:54:31,264 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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 15 [2022-02-20 23:54:31,264 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:31,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:31,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 132 transitions. [2022-02-20 23:54:31,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:31,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 132 transitions. [2022-02-20 23:54:31,266 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 132 transitions. [2022-02-20 23:54:31,373 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:31,374 INFO L225 Difference]: With dead ends: 147 [2022-02-20 23:54:31,374 INFO L226 Difference]: Without dead ends: 147 [2022-02-20 23:54:31,375 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:31,375 INFO L933 BasicCegarLoop]: 126 mSDtfsCounter, 4 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 196 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 319 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 196 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:31,375 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 319 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 196 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:54:31,376 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2022-02-20 23:54:31,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 147. [2022-02-20 23:54:31,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:31,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 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:54:31,378 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 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:54:31,378 INFO L87 Difference]: Start difference. First operand 147 states. Second operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 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:54:31,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:31,379 INFO L93 Difference]: Finished difference Result 147 states and 155 transitions. [2022-02-20 23:54:31,380 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 155 transitions. [2022-02-20 23:54:31,380 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:31,380 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:31,380 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 147 states. [2022-02-20 23:54:31,380 INFO L87 Difference]: Start difference. First operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 147 states. [2022-02-20 23:54:31,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:31,382 INFO L93 Difference]: Finished difference Result 147 states and 155 transitions. [2022-02-20 23:54:31,382 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 155 transitions. [2022-02-20 23:54:31,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:31,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:31,382 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:31,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:31,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 105 states have (on average 1.4761904761904763) internal successors, (155), 146 states have internal predecessors, (155), 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:54:31,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 155 transitions. [2022-02-20 23:54:31,384 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 155 transitions. Word has length 15 [2022-02-20 23:54:31,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:31,385 INFO L470 AbstractCegarLoop]: Abstraction has 147 states and 155 transitions. [2022-02-20 23:54:31,385 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.75) internal successors, (15), 5 states have internal predecessors, (15), 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:54:31,385 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 155 transitions. [2022-02-20 23:54:31,385 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:54:31,385 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:31,385 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:54:31,395 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:54:31,592 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:54:31,592 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr48ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:31,592 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:31,592 INFO L85 PathProgramCache]: Analyzing trace with hash 1587467776, now seen corresponding path program 1 times [2022-02-20 23:54:31,592 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:31,593 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1615950520] [2022-02-20 23:54:31,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:31,593 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:31,593 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:31,594 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:54:31,596 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:54:31,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:31,668 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:54:31,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:31,678 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:31,710 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:54:31,780 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:54:31,788 INFO L290 TraceCheckUtils]: 0: Hoare triple {6308#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(20bv32, 2bv32); {6308#true} is VALID [2022-02-20 23:54:31,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {6308#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {6308#true} is VALID [2022-02-20 23:54:31,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {6308#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {6308#true} is VALID [2022-02-20 23:54:31,789 INFO L290 TraceCheckUtils]: 3: Hoare triple {6308#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {6308#true} is VALID [2022-02-20 23:54:31,789 INFO L290 TraceCheckUtils]: 4: Hoare triple {6308#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {6308#true} is VALID [2022-02-20 23:54:31,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {6308#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:31,790 INFO L290 TraceCheckUtils]: 6: Hoare triple {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:31,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:31,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {6328#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:31,792 INFO L290 TraceCheckUtils]: 9: Hoare triple {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:31,792 INFO L290 TraceCheckUtils]: 10: Hoare triple {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:31,793 INFO L290 TraceCheckUtils]: 11: Hoare triple {6338#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:31,793 INFO L290 TraceCheckUtils]: 12: Hoare triple {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:31,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} goto; {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:31,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {6348#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {6358#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem13#1|)} is VALID [2022-02-20 23:54:31,794 INFO L290 TraceCheckUtils]: 15: Hoare triple {6358#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem13#1|)} assume !(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {6309#false} is VALID [2022-02-20 23:54:31,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {6309#false} assume !false; {6309#false} is VALID [2022-02-20 23:54:31,795 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:54:31,795 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:31,795 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:31,795 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1615950520] [2022-02-20 23:54:31,795 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1615950520] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:31,795 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:31,795 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:54:31,795 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [109095551] [2022-02-20 23:54:31,796 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:31,796 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:54:31,797 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:31,797 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:31,813 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:54:31,814 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:54:31,814 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:31,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:54:31,814 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:54:31,814 INFO L87 Difference]: Start difference. First operand 147 states and 155 transitions. Second operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:32,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:32,925 INFO L93 Difference]: Finished difference Result 201 states and 213 transitions. [2022-02-20 23:54:32,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:32,925 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:54:32,925 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:32,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:32,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 206 transitions. [2022-02-20 23:54:32,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:32,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 206 transitions. [2022-02-20 23:54:32,928 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 206 transitions. [2022-02-20 23:54:33,107 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:33,109 INFO L225 Difference]: With dead ends: 201 [2022-02-20 23:54:33,109 INFO L226 Difference]: Without dead ends: 201 [2022-02-20 23:54:33,109 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:33,110 INFO L933 BasicCegarLoop]: 103 mSDtfsCounter, 175 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 202 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 175 SdHoareTripleChecker+Valid, 358 SdHoareTripleChecker+Invalid, 211 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 202 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:33,110 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [175 Valid, 358 Invalid, 211 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 202 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:33,110 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2022-02-20 23:54:33,113 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 152. [2022-02-20 23:54:33,113 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:33,114 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 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:54:33,114 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 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:54:33,114 INFO L87 Difference]: Start difference. First operand 201 states. Second operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 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:54:33,116 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:33,117 INFO L93 Difference]: Finished difference Result 201 states and 213 transitions. [2022-02-20 23:54:33,117 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 213 transitions. [2022-02-20 23:54:33,117 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:33,117 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:33,117 INFO L74 IsIncluded]: Start isIncluded. First operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 201 states. [2022-02-20 23:54:33,118 INFO L87 Difference]: Start difference. First operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 201 states. [2022-02-20 23:54:33,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:33,120 INFO L93 Difference]: Finished difference Result 201 states and 213 transitions. [2022-02-20 23:54:33,120 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 213 transitions. [2022-02-20 23:54:33,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:33,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:33,121 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:33,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:33,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 152 states, 110 states have (on average 1.4545454545454546) internal successors, (160), 151 states have internal predecessors, (160), 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:54:33,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 160 transitions. [2022-02-20 23:54:33,123 INFO L78 Accepts]: Start accepts. Automaton has 152 states and 160 transitions. Word has length 17 [2022-02-20 23:54:33,123 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:33,123 INFO L470 AbstractCegarLoop]: Abstraction has 152 states and 160 transitions. [2022-02-20 23:54:33,123 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:54:33,123 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 160 transitions. [2022-02-20 23:54:33,124 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:54:33,124 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:33,124 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:54:33,136 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:54:33,330 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:54:33,330 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr20REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:33,331 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:33,331 INFO L85 PathProgramCache]: Analyzing trace with hash 2045128633, now seen corresponding path program 1 times [2022-02-20 23:54:33,331 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:33,331 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1131970187] [2022-02-20 23:54:33,331 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:33,331 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:33,331 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:33,332 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:54:33,333 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:54:33,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:33,457 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 15 conjunts are in the unsatisfiable core [2022-02-20 23:54:33,470 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:33,471 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:33,487 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:54:33,536 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:54:33,536 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 24 [2022-02-20 23:54:33,584 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:54:33,669 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:33,669 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 29 [2022-02-20 23:54:33,703 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:54:33,779 INFO L290 TraceCheckUtils]: 0: Hoare triple {7123#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(20bv32, 2bv32); {7123#true} is VALID [2022-02-20 23:54:33,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {7123#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {7123#true} is VALID [2022-02-20 23:54:33,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {7123#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {7123#true} is VALID [2022-02-20 23:54:33,780 INFO L290 TraceCheckUtils]: 3: Hoare triple {7123#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {7123#true} is VALID [2022-02-20 23:54:33,780 INFO L290 TraceCheckUtils]: 4: Hoare triple {7123#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {7123#true} is VALID [2022-02-20 23:54:33,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {7123#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:33,781 INFO L290 TraceCheckUtils]: 6: Hoare triple {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:33,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:33,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:33,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {7143#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {7156#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:33,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {7156#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {7160#(and (= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} is VALID [2022-02-20 23:54:33,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {7160#(and (= (select |#valid| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:33,785 INFO L290 TraceCheckUtils]: 12: Hoare triple {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:33,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {7171#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:33,787 INFO L290 TraceCheckUtils]: 14: Hoare triple {7171#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:33,788 INFO L290 TraceCheckUtils]: 15: Hoare triple {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:33,789 INFO L290 TraceCheckUtils]: 16: Hoare triple {7164#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {7181#(and (exists ((|ULTIMATE.start_main_~end~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem6#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_#t~mem6#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:54:33,790 INFO L290 TraceCheckUtils]: 17: Hoare triple {7181#(and (exists ((|ULTIMATE.start_main_~end~0#1.base| (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem6#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_#t~mem6#1.base|) (_ bv1 1)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {7185#(and (exists ((|v_ULTIMATE.start_main_~end~0#1.base_83| (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (select |#valid| |v_ULTIMATE.start_main_~end~0#1.base_83|) (_ bv1 1))) (not (= |v_ULTIMATE.start_main_~end~0#1.base_83| |ULTIMATE.start_main_~end~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:54:33,790 INFO L290 TraceCheckUtils]: 18: Hoare triple {7185#(and (exists ((|v_ULTIMATE.start_main_~end~0#1.base_83| (_ BitVec 32))) (and (= (_ bv0 1) (bvadd (select |#valid| |v_ULTIMATE.start_main_~end~0#1.base_83|) (_ bv1 1))) (not (= |v_ULTIMATE.start_main_~end~0#1.base_83| |ULTIMATE.start_main_~end~0#1.base|)))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} assume !(1bv1 == #valid[main_~end~0#1.base]); {7124#false} is VALID [2022-02-20 23:54:33,791 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:54:33,791 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:33,791 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:33,791 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1131970187] [2022-02-20 23:54:33,791 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1131970187] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:33,791 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:33,791 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:54:33,792 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1235441359] [2022-02-20 23:54:33,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:33,792 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:54:33,792 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:33,792 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:33,813 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:54:33,814 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:54:33,814 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:33,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:54:33,814 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:33,814 INFO L87 Difference]: Start difference. First operand 152 states and 160 transitions. Second operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:34,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:34,788 INFO L93 Difference]: Finished difference Result 184 states and 196 transitions. [2022-02-20 23:54:34,788 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:54:34,788 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:54:34,788 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:34,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:34,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 175 transitions. [2022-02-20 23:54:34,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:34,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 175 transitions. [2022-02-20 23:54:34,790 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 175 transitions. [2022-02-20 23:54:34,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:34,936 INFO L225 Difference]: With dead ends: 184 [2022-02-20 23:54:34,936 INFO L226 Difference]: Without dead ends: 184 [2022-02-20 23:54:34,936 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:54:34,937 INFO L933 BasicCegarLoop]: 98 mSDtfsCounter, 63 mSDsluCounter, 267 mSDsCounter, 0 mSdLazyCounter, 168 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 365 SdHoareTripleChecker+Invalid, 351 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 168 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 175 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:34,937 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 365 Invalid, 351 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 168 Invalid, 0 Unknown, 175 Unchecked, 0.3s Time] [2022-02-20 23:54:34,938 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 184 states. [2022-02-20 23:54:34,939 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 184 to 154. [2022-02-20 23:54:34,939 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:34,939 INFO L82 GeneralOperation]: Start isEquivalent. First operand 184 states. Second operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 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:54:34,939 INFO L74 IsIncluded]: Start isIncluded. First operand 184 states. Second operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 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:54:34,940 INFO L87 Difference]: Start difference. First operand 184 states. Second operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 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:54:34,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:34,942 INFO L93 Difference]: Finished difference Result 184 states and 196 transitions. [2022-02-20 23:54:34,942 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 196 transitions. [2022-02-20 23:54:34,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:34,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:34,942 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 184 states. [2022-02-20 23:54:34,942 INFO L87 Difference]: Start difference. First operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 184 states. [2022-02-20 23:54:34,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:34,944 INFO L93 Difference]: Finished difference Result 184 states and 196 transitions. [2022-02-20 23:54:34,944 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 196 transitions. [2022-02-20 23:54:34,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:34,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:34,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:34,945 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:34,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 112 states have (on average 1.4553571428571428) internal successors, (163), 153 states have internal predecessors, (163), 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:54:34,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 163 transitions. [2022-02-20 23:54:34,947 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 163 transitions. Word has length 19 [2022-02-20 23:54:34,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:34,947 INFO L470 AbstractCegarLoop]: Abstraction has 154 states and 163 transitions. [2022-02-20 23:54:34,947 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:34,947 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 163 transitions. [2022-02-20 23:54:34,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 23:54:34,947 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:34,947 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:54:34,957 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:54:35,155 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:54:35,157 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr21REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:35,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:35,157 INFO L85 PathProgramCache]: Analyzing trace with hash 2045128634, now seen corresponding path program 1 times [2022-02-20 23:54:35,157 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:35,157 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2093792761] [2022-02-20 23:54:35,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:35,158 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:35,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:35,159 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:54:35,160 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:54:35,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:35,270 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 23:54:35,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:35,288 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:35,305 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:54:35,357 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:54:35,358 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:54:35,361 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:54:35,400 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:54:35,407 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 11 treesize of output 7 [2022-02-20 23:54:35,487 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:35,487 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 38 treesize of output 37 [2022-02-20 23:54:35,493 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 18 treesize of output 20 [2022-02-20 23:54:35,523 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:54:35,532 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 15 treesize of output 7 [2022-02-20 23:54:35,567 INFO L290 TraceCheckUtils]: 0: Hoare triple {7909#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(20bv32, 2bv32); {7909#true} is VALID [2022-02-20 23:54:35,567 INFO L290 TraceCheckUtils]: 1: Hoare triple {7909#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {7909#true} is VALID [2022-02-20 23:54:35,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {7909#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {7909#true} is VALID [2022-02-20 23:54:35,567 INFO L290 TraceCheckUtils]: 3: Hoare triple {7909#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {7909#true} is VALID [2022-02-20 23:54:35,567 INFO L290 TraceCheckUtils]: 4: Hoare triple {7909#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {7909#true} is VALID [2022-02-20 23:54:35,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {7909#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:35,569 INFO L290 TraceCheckUtils]: 6: Hoare triple {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:35,569 INFO L290 TraceCheckUtils]: 7: Hoare triple {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:35,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:35,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {7929#(= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {7942#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:35,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {7942#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {7946#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv12 32)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} is VALID [2022-02-20 23:54:35,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {7946#(and (= |ULTIMATE.start_main_#t~malloc4#1.offset| (_ bv0 32)) (= (select |#length| |ULTIMATE.start_main_#t~malloc4#1.base|) (_ bv12 32)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:35,573 INFO L290 TraceCheckUtils]: 12: Hoare triple {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:35,573 INFO L290 TraceCheckUtils]: 13: Hoare triple {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {7957#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:35,575 INFO L290 TraceCheckUtils]: 14: Hoare triple {7957#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:35,575 INFO L290 TraceCheckUtils]: 15: Hoare triple {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:35,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {7950#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {7967#(and (= (select |#length| |ULTIMATE.start_main_#t~mem6#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_#t~mem6#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:35,576 INFO L290 TraceCheckUtils]: 17: Hoare triple {7967#(and (= (select |#length| |ULTIMATE.start_main_#t~mem6#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_#t~mem6#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {7971#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:35,577 INFO L290 TraceCheckUtils]: 18: Hoare triple {7971#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~end~0#1.offset), #length[main_~end~0#1.base]) && ~bvule32(main_~end~0#1.offset, ~bvadd32(4bv32, main_~end~0#1.offset))) && ~bvule32(0bv32, main_~end~0#1.offset)); {7910#false} is VALID [2022-02-20 23:54:35,577 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:54:35,577 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:35,577 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:35,577 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2093792761] [2022-02-20 23:54:35,577 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2093792761] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:35,577 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:35,577 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:54:35,577 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1010752207] [2022-02-20 23:54:35,577 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:35,578 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:54:35,578 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:35,578 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:35,605 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:54:35,605 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:54:35,605 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:35,605 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:54:35,605 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:54:35,606 INFO L87 Difference]: Start difference. First operand 154 states and 163 transitions. Second operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:38,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:38,092 INFO L93 Difference]: Finished difference Result 171 states and 180 transitions. [2022-02-20 23:54:38,092 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:54:38,093 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 19 [2022-02-20 23:54:38,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:38,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:38,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 164 transitions. [2022-02-20 23:54:38,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:38,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 164 transitions. [2022-02-20 23:54:38,096 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 164 transitions. [2022-02-20 23:54:38,254 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 164 edges. 164 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:38,255 INFO L225 Difference]: With dead ends: 171 [2022-02-20 23:54:38,255 INFO L226 Difference]: Without dead ends: 171 [2022-02-20 23:54:38,255 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=129, Invalid=333, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:54:38,256 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 228 mSDsluCounter, 233 mSDsCounter, 0 mSdLazyCounter, 537 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 228 SdHoareTripleChecker+Valid, 300 SdHoareTripleChecker+Invalid, 566 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 537 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:38,256 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [228 Valid, 300 Invalid, 566 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 537 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-02-20 23:54:38,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-02-20 23:54:38,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 163. [2022-02-20 23:54:38,258 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:38,258 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 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:54:38,258 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 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:54:38,258 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 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:54:38,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:38,260 INFO L93 Difference]: Finished difference Result 171 states and 180 transitions. [2022-02-20 23:54:38,260 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 180 transitions. [2022-02-20 23:54:38,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:38,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:38,260 INFO L74 IsIncluded]: Start isIncluded. First operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 171 states. [2022-02-20 23:54:38,263 INFO L87 Difference]: Start difference. First operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 171 states. [2022-02-20 23:54:38,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:38,266 INFO L93 Difference]: Finished difference Result 171 states and 180 transitions. [2022-02-20 23:54:38,266 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 180 transitions. [2022-02-20 23:54:38,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:38,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:38,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:38,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:38,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 163 states, 127 states have (on average 1.3779527559055118) internal successors, (175), 162 states have internal predecessors, (175), 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:54:38,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 163 states to 163 states and 175 transitions. [2022-02-20 23:54:38,270 INFO L78 Accepts]: Start accepts. Automaton has 163 states and 175 transitions. Word has length 19 [2022-02-20 23:54:38,270 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:38,270 INFO L470 AbstractCegarLoop]: Abstraction has 163 states and 175 transitions. [2022-02-20 23:54:38,270 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.375) internal successors, (19), 9 states have internal predecessors, (19), 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:54:38,271 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 175 transitions. [2022-02-20 23:54:38,271 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:54:38,271 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:38,271 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] [2022-02-20 23:54:38,291 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (13)] Ended with exit code 0 [2022-02-20 23:54:38,479 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:54:38,479 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr49REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:38,479 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:38,479 INFO L85 PathProgramCache]: Analyzing trace with hash -1915505871, now seen corresponding path program 1 times [2022-02-20 23:54:38,480 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:38,480 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [444641899] [2022-02-20 23:54:38,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:38,480 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:38,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:38,481 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:54:38,483 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:54:38,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:38,573 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 23:54:38,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:38,586 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:38,607 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 11 treesize of output 7 [2022-02-20 23:54:38,611 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 11 treesize of output 7 [2022-02-20 23:54:38,662 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:54:38,663 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:54:38,672 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:38,673 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:54:38,703 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:54:38,703 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:54:38,708 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:38,709 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:54:38,866 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:54:38,869 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:54:38,908 INFO L290 TraceCheckUtils]: 0: Hoare triple {8676#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(20bv32, 2bv32); {8676#true} is VALID [2022-02-20 23:54:38,909 INFO L290 TraceCheckUtils]: 1: Hoare triple {8676#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:38,909 INFO L290 TraceCheckUtils]: 2: Hoare triple {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:38,910 INFO L290 TraceCheckUtils]: 3: Hoare triple {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:38,910 INFO L290 TraceCheckUtils]: 4: Hoare triple {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:38,910 INFO L290 TraceCheckUtils]: 5: Hoare triple {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:38,912 INFO L290 TraceCheckUtils]: 6: Hoare triple {8684#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,914 INFO L290 TraceCheckUtils]: 7: Hoare triple {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,915 INFO L290 TraceCheckUtils]: 8: Hoare triple {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,916 INFO L290 TraceCheckUtils]: 9: Hoare triple {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,916 INFO L290 TraceCheckUtils]: 10: Hoare triple {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,917 INFO L290 TraceCheckUtils]: 11: Hoare triple {8700#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,917 INFO L290 TraceCheckUtils]: 12: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,918 INFO L290 TraceCheckUtils]: 13: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} goto; {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,918 INFO L290 TraceCheckUtils]: 14: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,919 INFO L290 TraceCheckUtils]: 15: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,919 INFO L290 TraceCheckUtils]: 16: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} goto; {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,919 INFO L290 TraceCheckUtils]: 17: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,920 INFO L290 TraceCheckUtils]: 18: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call main_#t~mem14#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1045 {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,920 INFO L290 TraceCheckUtils]: 19: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,921 INFO L290 TraceCheckUtils]: 20: Hoare triple {8716#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1045-2 {8744#(and (= |ULTIMATE.start_main_#t~mem17#1.base| |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_#t~mem17#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:38,921 INFO L290 TraceCheckUtils]: 21: Hoare triple {8744#(and (= |ULTIMATE.start_main_#t~mem17#1.base| |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_#t~mem17#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {8748#(and (= |ULTIMATE.start_main_~end~0#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:38,922 INFO L290 TraceCheckUtils]: 22: Hoare triple {8748#(and (= |ULTIMATE.start_main_~end~0#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8677#false} is VALID [2022-02-20 23:54:38,922 INFO L290 TraceCheckUtils]: 23: Hoare triple {8677#false} assume !(1bv1 == #valid[main_~end~0#1.base]); {8677#false} is VALID [2022-02-20 23:54:38,922 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:38,922 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:54:39,128 INFO L290 TraceCheckUtils]: 23: Hoare triple {8677#false} assume !(1bv1 == #valid[main_~end~0#1.base]); {8677#false} is VALID [2022-02-20 23:54:39,129 INFO L290 TraceCheckUtils]: 22: Hoare triple {8758#(and (= |ULTIMATE.start_main_~end~0#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8677#false} is VALID [2022-02-20 23:54:39,129 INFO L290 TraceCheckUtils]: 21: Hoare triple {8762#(and (= |ULTIMATE.start_main_#t~mem17#1.base| |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_#t~mem17#1.offset| |ULTIMATE.start_main_~null~0#1.offset|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {8758#(and (= |ULTIMATE.start_main_~end~0#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:39,129 INFO L290 TraceCheckUtils]: 20: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1045-2 {8762#(and (= |ULTIMATE.start_main_#t~mem17#1.base| |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_#t~mem17#1.offset| |ULTIMATE.start_main_~null~0#1.offset|))} is VALID [2022-02-20 23:54:39,130 INFO L290 TraceCheckUtils]: 19: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,130 INFO L290 TraceCheckUtils]: 18: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1045 {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,131 INFO L290 TraceCheckUtils]: 17: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,132 INFO L290 TraceCheckUtils]: 15: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,132 INFO L290 TraceCheckUtils]: 14: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,132 INFO L290 TraceCheckUtils]: 13: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} goto; {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,133 INFO L290 TraceCheckUtils]: 12: Hoare triple {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,133 INFO L290 TraceCheckUtils]: 11: Hoare triple {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8766#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:39,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:39,134 INFO L290 TraceCheckUtils]: 9: Hoare triple {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:39,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:39,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 6: Hoare triple {8676#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {8794#(and (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|) |ULTIMATE.start_main_~null~0#1.base|) (= |ULTIMATE.start_main_~null~0#1.offset| (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~list~0#1.base|) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {8676#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {8676#true} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 4: Hoare triple {8676#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {8676#true} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {8676#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {8676#true} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {8676#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {8676#true} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {8676#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {8676#true} is VALID [2022-02-20 23:54:39,138 INFO L290 TraceCheckUtils]: 0: Hoare triple {8676#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(20bv32, 2bv32); {8676#true} is VALID [2022-02-20 23:54:39,139 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:39,139 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:39,139 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [444641899] [2022-02-20 23:54:39,139 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [444641899] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:54:39,139 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:54:39,139 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 11 [2022-02-20 23:54:39,139 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1800862340] [2022-02-20 23:54:39,139 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 23:54:39,140 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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 24 [2022-02-20 23:54:39,140 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:39,140 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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:54:39,183 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:39,183 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 23:54:39,183 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:39,183 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 23:54:39,183 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:54:39,183 INFO L87 Difference]: Start difference. First operand 163 states and 175 transitions. Second operand has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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:54:41,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:41,229 INFO L93 Difference]: Finished difference Result 213 states and 229 transitions. [2022-02-20 23:54:41,229 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:54:41,229 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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 24 [2022-02-20 23:54:41,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:41,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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:54:41,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 196 transitions. [2022-02-20 23:54:41,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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:54:41,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 196 transitions. [2022-02-20 23:54:41,232 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 196 transitions. [2022-02-20 23:54:41,417 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:41,419 INFO L225 Difference]: With dead ends: 213 [2022-02-20 23:54:41,419 INFO L226 Difference]: Without dead ends: 213 [2022-02-20 23:54:41,420 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 35 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=152, Unknown=0, NotChecked=0, Total=210 [2022-02-20 23:54:41,420 INFO L933 BasicCegarLoop]: 76 mSDtfsCounter, 339 mSDsluCounter, 343 mSDsCounter, 0 mSdLazyCounter, 422 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 339 SdHoareTripleChecker+Valid, 419 SdHoareTripleChecker+Invalid, 454 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 422 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:41,420 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [339 Valid, 419 Invalid, 454 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 422 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:54:41,421 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213 states. [2022-02-20 23:54:41,422 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213 to 170. [2022-02-20 23:54:41,422 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:41,422 INFO L82 GeneralOperation]: Start isEquivalent. First operand 213 states. Second operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 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:54:41,423 INFO L74 IsIncluded]: Start isIncluded. First operand 213 states. Second operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 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:54:41,423 INFO L87 Difference]: Start difference. First operand 213 states. Second operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 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:54:41,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:41,425 INFO L93 Difference]: Finished difference Result 213 states and 229 transitions. [2022-02-20 23:54:41,425 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 229 transitions. [2022-02-20 23:54:41,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:41,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:41,426 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 213 states. [2022-02-20 23:54:41,426 INFO L87 Difference]: Start difference. First operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 213 states. [2022-02-20 23:54:41,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:41,429 INFO L93 Difference]: Finished difference Result 213 states and 229 transitions. [2022-02-20 23:54:41,429 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 229 transitions. [2022-02-20 23:54:41,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:41,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:41,429 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:41,429 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:41,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 134 states have (on average 1.3656716417910448) internal successors, (183), 169 states have internal predecessors, (183), 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:54:41,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 183 transitions. [2022-02-20 23:54:41,431 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 183 transitions. Word has length 24 [2022-02-20 23:54:41,431 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:41,432 INFO L470 AbstractCegarLoop]: Abstraction has 170 states and 183 transitions. [2022-02-20 23:54:41,432 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 4.181818181818182) internal successors, (46), 11 states have internal predecessors, (46), 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:54:41,432 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 183 transitions. [2022-02-20 23:54:41,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:54:41,432 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:41,432 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:41,441 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:54:41,639 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:54:41,639 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr53ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:41,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:41,640 INFO L85 PathProgramCache]: Analyzing trace with hash -1957524124, now seen corresponding path program 1 times [2022-02-20 23:54:41,640 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:41,640 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [667204004] [2022-02-20 23:54:41,640 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:41,640 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:41,640 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:41,641 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:54:41,642 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:54:41,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:41,729 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:54:41,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:41,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:41,759 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:54:41,843 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:54:41,855 INFO L290 TraceCheckUtils]: 0: Hoare triple {9644#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(20bv32, 2bv32); {9644#true} is VALID [2022-02-20 23:54:41,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {9644#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {9644#true} is VALID [2022-02-20 23:54:41,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {9644#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {9644#true} is VALID [2022-02-20 23:54:41,856 INFO L290 TraceCheckUtils]: 3: Hoare triple {9644#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {9644#true} is VALID [2022-02-20 23:54:41,856 INFO L290 TraceCheckUtils]: 4: Hoare triple {9644#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {9644#true} is VALID [2022-02-20 23:54:41,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {9644#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:41,856 INFO L290 TraceCheckUtils]: 6: Hoare triple {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:41,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:41,858 INFO L290 TraceCheckUtils]: 8: Hoare triple {9664#(= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:41,858 INFO L290 TraceCheckUtils]: 9: Hoare triple {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:41,858 INFO L290 TraceCheckUtils]: 10: Hoare triple {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:41,859 INFO L290 TraceCheckUtils]: 11: Hoare triple {9674#(and (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|))) (= |ULTIMATE.start_main_~list~0#1.offset| (_ bv0 32)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,859 INFO L290 TraceCheckUtils]: 12: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,860 INFO L290 TraceCheckUtils]: 13: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} goto; {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,860 INFO L290 TraceCheckUtils]: 14: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,861 INFO L290 TraceCheckUtils]: 15: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,861 INFO L290 TraceCheckUtils]: 16: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} goto; {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,862 INFO L290 TraceCheckUtils]: 17: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:41,862 INFO L290 TraceCheckUtils]: 18: Hoare triple {9684#(and (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)) (= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem14#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1045 {9706#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem14#1|)} is VALID [2022-02-20 23:54:41,863 INFO L290 TraceCheckUtils]: 19: Hoare triple {9706#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem14#1|)} assume ~unnamed1~0~RED == main_#t~mem14#1;havoc main_#t~mem14#1; {9645#false} is VALID [2022-02-20 23:54:41,863 INFO L290 TraceCheckUtils]: 20: Hoare triple {9645#false} SUMMARY for call main_#t~mem15#1.base, main_#t~mem15#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1047 {9645#false} is VALID [2022-02-20 23:54:41,863 INFO L290 TraceCheckUtils]: 21: Hoare triple {9645#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem15#1.base, main_#t~mem15#1.offset;havoc main_#t~mem15#1.base, main_#t~mem15#1.offset; {9645#false} is VALID [2022-02-20 23:54:41,863 INFO L290 TraceCheckUtils]: 22: Hoare triple {9645#false} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {9645#false} is VALID [2022-02-20 23:54:41,863 INFO L290 TraceCheckUtils]: 23: Hoare triple {9645#false} assume !false; {9645#false} is VALID [2022-02-20 23:54:41,863 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:54:41,863 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:41,863 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:41,863 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [667204004] [2022-02-20 23:54:41,863 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [667204004] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:41,863 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:41,863 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:54:41,864 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1157009085] [2022-02-20 23:54:41,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:41,864 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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 24 [2022-02-20 23:54:41,864 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:41,864 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:54:41,886 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:41,887 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:54:41,887 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:41,887 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:54:41,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:54:41,887 INFO L87 Difference]: Start difference. First operand 170 states and 183 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:54:42,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:42,876 INFO L93 Difference]: Finished difference Result 189 states and 202 transitions. [2022-02-20 23:54:42,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:42,876 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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 24 [2022-02-20 23:54:42,877 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:42,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:54:42,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 174 transitions. [2022-02-20 23:54:42,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:54:42,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 174 transitions. [2022-02-20 23:54:42,878 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 174 transitions. [2022-02-20 23:54:43,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:43,024 INFO L225 Difference]: With dead ends: 189 [2022-02-20 23:54:43,024 INFO L226 Difference]: Without dead ends: 189 [2022-02-20 23:54:43,024 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:43,024 INFO L933 BasicCegarLoop]: 99 mSDtfsCounter, 137 mSDsluCounter, 245 mSDsCounter, 0 mSdLazyCounter, 192 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 137 SdHoareTripleChecker+Valid, 344 SdHoareTripleChecker+Invalid, 201 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 192 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:43,025 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [137 Valid, 344 Invalid, 201 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 192 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:43,025 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 189 states. [2022-02-20 23:54:43,026 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 189 to 170. [2022-02-20 23:54:43,027 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:43,027 INFO L82 GeneralOperation]: Start isEquivalent. First operand 189 states. Second operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 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:54:43,027 INFO L74 IsIncluded]: Start isIncluded. First operand 189 states. Second operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 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:54:43,027 INFO L87 Difference]: Start difference. First operand 189 states. Second operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 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:54:43,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:43,029 INFO L93 Difference]: Finished difference Result 189 states and 202 transitions. [2022-02-20 23:54:43,029 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 202 transitions. [2022-02-20 23:54:43,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:43,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:43,030 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 189 states. [2022-02-20 23:54:43,030 INFO L87 Difference]: Start difference. First operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 189 states. [2022-02-20 23:54:43,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:43,032 INFO L93 Difference]: Finished difference Result 189 states and 202 transitions. [2022-02-20 23:54:43,032 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 202 transitions. [2022-02-20 23:54:43,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:43,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:43,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:43,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:43,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 134 states have (on average 1.3582089552238805) internal successors, (182), 169 states have internal predecessors, (182), 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:54:43,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 182 transitions. [2022-02-20 23:54:43,034 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 182 transitions. Word has length 24 [2022-02-20 23:54:43,034 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:43,034 INFO L470 AbstractCegarLoop]: Abstraction has 170 states and 182 transitions. [2022-02-20 23:54:43,034 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 6 states have internal predecessors, (24), 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:54:43,035 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 182 transitions. [2022-02-20 23:54:43,035 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:54:43,035 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:43,035 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:43,042 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (15)] Ended with exit code 0 [2022-02-20 23:54:43,242 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:43,242 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr40ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:43,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:43,243 INFO L85 PathProgramCache]: Analyzing trace with hash 915476318, now seen corresponding path program 1 times [2022-02-20 23:54:43,243 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:43,243 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1965381032] [2022-02-20 23:54:43,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:43,243 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:43,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:43,244 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:43,246 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Waiting until timeout for monitored process [2022-02-20 23:54:43,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:43,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:54:43,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:43,358 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:43,398 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:54:43,412 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:54:43,418 INFO L290 TraceCheckUtils]: 0: Hoare triple {10462#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(20bv32, 2bv32); {10462#true} is VALID [2022-02-20 23:54:43,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {10462#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {10462#true} is VALID [2022-02-20 23:54:43,418 INFO L290 TraceCheckUtils]: 3: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 4: Hoare triple {10462#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {10462#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 6: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 7: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 8: Hoare triple {10462#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 9: Hoare triple {10462#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 10: Hoare triple {10462#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {10462#true} is VALID [2022-02-20 23:54:43,419 INFO L290 TraceCheckUtils]: 11: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {10462#true} is VALID [2022-02-20 23:54:43,420 INFO L290 TraceCheckUtils]: 12: Hoare triple {10462#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,420 INFO L290 TraceCheckUtils]: 13: Hoare triple {10462#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {10462#true} is VALID [2022-02-20 23:54:43,420 INFO L290 TraceCheckUtils]: 14: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {10462#true} is VALID [2022-02-20 23:54:43,420 INFO L290 TraceCheckUtils]: 15: Hoare triple {10462#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,420 INFO L290 TraceCheckUtils]: 16: Hoare triple {10462#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {10462#true} is VALID [2022-02-20 23:54:43,421 INFO L290 TraceCheckUtils]: 17: Hoare triple {10462#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {10462#true} is VALID [2022-02-20 23:54:43,421 INFO L290 TraceCheckUtils]: 18: Hoare triple {10462#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {10462#true} is VALID [2022-02-20 23:54:43,421 INFO L290 TraceCheckUtils]: 19: Hoare triple {10462#true} assume 0bv32 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {10462#true} is VALID [2022-02-20 23:54:43,422 INFO L290 TraceCheckUtils]: 20: Hoare triple {10462#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1021 {10527#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:43,423 INFO L290 TraceCheckUtils]: 21: Hoare triple {10527#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~end~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem11#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1032-4 {10531#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem11#1|)} is VALID [2022-02-20 23:54:43,423 INFO L290 TraceCheckUtils]: 22: Hoare triple {10531#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem11#1|)} assume !(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {10463#false} is VALID [2022-02-20 23:54:43,423 INFO L290 TraceCheckUtils]: 23: Hoare triple {10463#false} assume !false; {10463#false} is VALID [2022-02-20 23:54:43,423 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:54:43,424 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:43,424 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:43,424 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1965381032] [2022-02-20 23:54:43,424 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1965381032] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:43,424 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:43,424 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:43,424 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1973009961] [2022-02-20 23:54:43,424 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:43,425 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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 24 [2022-02-20 23:54:43,425 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:43,425 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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:54:43,448 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:43,448 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:43,449 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:43,449 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:43,449 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:43,450 INFO L87 Difference]: Start difference. First operand 170 states and 182 transitions. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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:54:44,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:44,039 INFO L93 Difference]: Finished difference Result 168 states and 179 transitions. [2022-02-20 23:54:44,039 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:44,039 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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 24 [2022-02-20 23:54:44,039 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:44,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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:54:44,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 131 transitions. [2022-02-20 23:54:44,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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:54:44,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 131 transitions. [2022-02-20 23:54:44,041 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 131 transitions. [2022-02-20 23:54:44,141 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:44,142 INFO L225 Difference]: With dead ends: 168 [2022-02-20 23:54:44,143 INFO L226 Difference]: Without dead ends: 168 [2022-02-20 23:54:44,143 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 21 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:54:44,143 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 19 mSDsluCounter, 164 mSDsCounter, 0 mSdLazyCounter, 84 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 84 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:44,143 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 282 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:44,144 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-20 23:54:44,145 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 168. [2022-02-20 23:54:44,145 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:44,146 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 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:54:44,146 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 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:54:44,146 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 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:54:44,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:44,147 INFO L93 Difference]: Finished difference Result 168 states and 179 transitions. [2022-02-20 23:54:44,148 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 179 transitions. [2022-02-20 23:54:44,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:44,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:44,148 INFO L74 IsIncluded]: Start isIncluded. First operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:44,148 INFO L87 Difference]: Start difference. First operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:44,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:44,150 INFO L93 Difference]: Finished difference Result 168 states and 179 transitions. [2022-02-20 23:54:44,150 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 179 transitions. [2022-02-20 23:54:44,150 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:44,150 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:44,150 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:44,150 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:44,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 168 states, 133 states have (on average 1.3458646616541354) internal successors, (179), 167 states have internal predecessors, (179), 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:54:44,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 179 transitions. [2022-02-20 23:54:44,152 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 179 transitions. Word has length 24 [2022-02-20 23:54:44,152 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:44,152 INFO L470 AbstractCegarLoop]: Abstraction has 168 states and 179 transitions. [2022-02-20 23:54:44,152 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 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:54:44,152 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 179 transitions. [2022-02-20 23:54:44,153 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:54:44,153 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:44,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, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:44,170 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:44,360 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:44,360 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr30REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:44,360 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:44,360 INFO L85 PathProgramCache]: Analyzing trace with hash -433833013, now seen corresponding path program 1 times [2022-02-20 23:54:44,361 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:44,361 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1803364884] [2022-02-20 23:54:44,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:44,361 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:44,361 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:44,362 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:54:44,362 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:54:44,470 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:44,476 INFO L263 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:54:44,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:44,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:44,522 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:54:44,534 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 11 treesize of output 7 [2022-02-20 23:54:44,553 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 17 treesize of output 9 [2022-02-20 23:54:44,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {11211#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(20bv32, 2bv32); {11211#true} is VALID [2022-02-20 23:54:44,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {11211#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {11211#true} is VALID [2022-02-20 23:54:44,564 INFO L290 TraceCheckUtils]: 3: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {11211#true} is VALID [2022-02-20 23:54:44,564 INFO L290 TraceCheckUtils]: 4: Hoare triple {11211#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {11211#true} is VALID [2022-02-20 23:54:44,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {11211#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,566 INFO L290 TraceCheckUtils]: 6: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {11211#true} is VALID [2022-02-20 23:54:44,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {11211#true} is VALID [2022-02-20 23:54:44,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {11211#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {11211#true} is VALID [2022-02-20 23:54:44,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {11211#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {11211#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {11211#true} is VALID [2022-02-20 23:54:44,571 INFO L290 TraceCheckUtils]: 11: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {11211#true} is VALID [2022-02-20 23:54:44,571 INFO L290 TraceCheckUtils]: 12: Hoare triple {11211#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {11211#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {11211#true} is VALID [2022-02-20 23:54:44,572 INFO L290 TraceCheckUtils]: 14: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {11211#true} is VALID [2022-02-20 23:54:44,572 INFO L290 TraceCheckUtils]: 15: Hoare triple {11211#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,573 INFO L290 TraceCheckUtils]: 16: Hoare triple {11211#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {11211#true} is VALID [2022-02-20 23:54:44,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {11211#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {11211#true} is VALID [2022-02-20 23:54:44,575 INFO L290 TraceCheckUtils]: 18: Hoare triple {11211#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {11211#true} is VALID [2022-02-20 23:54:44,576 INFO L290 TraceCheckUtils]: 19: Hoare triple {11211#true} assume !(0bv32 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {11211#true} is VALID [2022-02-20 23:54:44,576 INFO L290 TraceCheckUtils]: 20: Hoare triple {11211#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~RED, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1025 {11211#true} is VALID [2022-02-20 23:54:44,577 INFO L290 TraceCheckUtils]: 21: Hoare triple {11211#true} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32); {11279#(= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:44,578 INFO L290 TraceCheckUtils]: 22: Hoare triple {11279#(= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1026 {11283#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:44,579 INFO L290 TraceCheckUtils]: 23: Hoare triple {11283#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {11283#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} is VALID [2022-02-20 23:54:44,579 INFO L290 TraceCheckUtils]: 24: Hoare triple {11283#(= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1027 {11290#(= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:44,580 INFO L290 TraceCheckUtils]: 25: Hoare triple {11290#(= (select |#valid| |ULTIMATE.start_main_#t~mem9#1.base|) (_ bv1 1))} assume !(1bv1 == #valid[main_#t~mem9#1.base]); {11212#false} is VALID [2022-02-20 23:54:44,580 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:54:44,580 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:44,580 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:44,580 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1803364884] [2022-02-20 23:54:44,580 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1803364884] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:44,580 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:44,581 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:44,581 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1507072820] [2022-02-20 23:54:44,581 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:44,581 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:44,582 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:44,583 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:44,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:44,610 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:44,610 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:44,611 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:44,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:44,611 INFO L87 Difference]: Start difference. First operand 168 states and 179 transitions. Second operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:45,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:45,455 INFO L93 Difference]: Finished difference Result 167 states and 178 transitions. [2022-02-20 23:54:45,455 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:54:45,455 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:45,455 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:45,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:45,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:54:45,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:45,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2022-02-20 23:54:45,457 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 123 transitions. [2022-02-20 23:54:45,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:45,565 INFO L225 Difference]: With dead ends: 167 [2022-02-20 23:54:45,565 INFO L226 Difference]: Without dead ends: 167 [2022-02-20 23:54:45,566 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:45,566 INFO L933 BasicCegarLoop]: 117 mSDtfsCounter, 6 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 166 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 166 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:45,566 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 310 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 166 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:45,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states. [2022-02-20 23:54:45,568 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 167. [2022-02-20 23:54:45,568 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:45,568 INFO L82 GeneralOperation]: Start isEquivalent. First operand 167 states. Second operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 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:54:45,569 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 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:54:45,569 INFO L87 Difference]: Start difference. First operand 167 states. Second operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 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:54:45,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:45,570 INFO L93 Difference]: Finished difference Result 167 states and 178 transitions. [2022-02-20 23:54:45,570 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 178 transitions. [2022-02-20 23:54:45,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:45,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:45,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 167 states. [2022-02-20 23:54:45,571 INFO L87 Difference]: Start difference. First operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 167 states. [2022-02-20 23:54:45,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:45,572 INFO L93 Difference]: Finished difference Result 167 states and 178 transitions. [2022-02-20 23:54:45,573 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 178 transitions. [2022-02-20 23:54:45,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:45,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:45,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:45,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:45,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 133 states have (on average 1.3383458646616542) internal successors, (178), 166 states have internal predecessors, (178), 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:54:45,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 178 transitions. [2022-02-20 23:54:45,575 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 178 transitions. Word has length 26 [2022-02-20 23:54:45,575 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:45,575 INFO L470 AbstractCegarLoop]: Abstraction has 167 states and 178 transitions. [2022-02-20 23:54:45,575 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:45,575 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 178 transitions. [2022-02-20 23:54:45,575 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:54:45,575 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:45,576 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:45,585 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:54:45,779 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:54:45,779 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr31REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:45,780 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:45,780 INFO L85 PathProgramCache]: Analyzing trace with hash -433833012, now seen corresponding path program 1 times [2022-02-20 23:54:45,780 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:45,780 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [315272652] [2022-02-20 23:54:45,780 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:45,780 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:45,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:45,781 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:54:45,783 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:54:45,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:45,893 INFO L263 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:54:45,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:45,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:45,959 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:54:45,983 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 11 treesize of output 7 [2022-02-20 23:54:45,988 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 11 treesize of output 7 [2022-02-20 23:54:46,018 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 17 treesize of output 9 [2022-02-20 23:54:46,020 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:54:46,030 INFO L290 TraceCheckUtils]: 0: Hoare triple {11965#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(20bv32, 2bv32); {11965#true} is VALID [2022-02-20 23:54:46,030 INFO L290 TraceCheckUtils]: 1: Hoare triple {11965#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 3: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 4: Hoare triple {11965#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {11965#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 6: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 7: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {11965#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {11965#true} is VALID [2022-02-20 23:54:46,031 INFO L290 TraceCheckUtils]: 9: Hoare triple {11965#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,032 INFO L290 TraceCheckUtils]: 10: Hoare triple {11965#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {11965#true} is VALID [2022-02-20 23:54:46,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {11965#true} is VALID [2022-02-20 23:54:46,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {11965#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {11965#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 14: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {11965#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {11965#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {11965#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {11965#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {11965#true} assume !(0bv32 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {11965#true} is VALID [2022-02-20 23:54:46,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {11965#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~RED, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1025 {11965#true} is VALID [2022-02-20 23:54:46,034 INFO L290 TraceCheckUtils]: 21: Hoare triple {11965#true} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32); {12033#(and (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv12 32)) (= (_ bv0 32) |ULTIMATE.start_main_#t~malloc8#1.offset|))} is VALID [2022-02-20 23:54:46,036 INFO L290 TraceCheckUtils]: 22: Hoare triple {12033#(and (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv12 32)) (= (_ bv0 32) |ULTIMATE.start_main_#t~malloc8#1.offset|))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1026 {12037#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:46,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {12037#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {12037#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:46,037 INFO L290 TraceCheckUtils]: 24: Hoare triple {12037#(and (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1027 {12044#(and (= (_ bv0 32) |ULTIMATE.start_main_#t~mem9#1.offset|) (= (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|) (_ bv12 32)))} is VALID [2022-02-20 23:54:46,038 INFO L290 TraceCheckUtils]: 25: Hoare triple {12044#(and (= (_ bv0 32) |ULTIMATE.start_main_#t~mem9#1.offset|) (= (select |#length| |ULTIMATE.start_main_#t~mem9#1.base|) (_ bv12 32)))} assume !((~bvule32(~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem9#1.offset)), #length[main_#t~mem9#1.base]) && ~bvule32(~bvadd32(4bv32, main_#t~mem9#1.offset), ~bvadd32(4bv32, ~bvadd32(4bv32, main_#t~mem9#1.offset)))) && ~bvule32(0bv32, ~bvadd32(4bv32, main_#t~mem9#1.offset))); {11966#false} is VALID [2022-02-20 23:54:46,039 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:54:46,040 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:46,040 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:46,040 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [315272652] [2022-02-20 23:54:46,041 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [315272652] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:46,041 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:46,041 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:46,041 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [299893055] [2022-02-20 23:54:46,041 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:46,042 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:46,042 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:46,042 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:46,070 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:46,070 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:46,070 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:46,070 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:46,070 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:46,070 INFO L87 Difference]: Start difference. First operand 167 states and 178 transitions. Second operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:46,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:46,999 INFO L93 Difference]: Finished difference Result 166 states and 177 transitions. [2022-02-20 23:54:46,999 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:54:46,999 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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 26 [2022-02-20 23:54:46,999 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:46,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:47,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 122 transitions. [2022-02-20 23:54:47,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:47,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 122 transitions. [2022-02-20 23:54:47,001 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 122 transitions. [2022-02-20 23:54:47,104 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:54:47,105 INFO L225 Difference]: With dead ends: 166 [2022-02-20 23:54:47,105 INFO L226 Difference]: Without dead ends: 166 [2022-02-20 23:54:47,105 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:54:47,105 INFO L933 BasicCegarLoop]: 118 mSDtfsCounter, 2 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 175 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 302 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 175 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:47,106 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 302 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 175 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:54:47,106 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2022-02-20 23:54:47,107 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 166. [2022-02-20 23:54:47,107 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:47,108 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 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:54:47,108 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 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:54:47,108 INFO L87 Difference]: Start difference. First operand 166 states. Second operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 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:54:47,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:47,109 INFO L93 Difference]: Finished difference Result 166 states and 177 transitions. [2022-02-20 23:54:47,109 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 177 transitions. [2022-02-20 23:54:47,110 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:47,110 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:47,110 INFO L74 IsIncluded]: Start isIncluded. First operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 166 states. [2022-02-20 23:54:47,110 INFO L87 Difference]: Start difference. First operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 166 states. [2022-02-20 23:54:47,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:47,111 INFO L93 Difference]: Finished difference Result 166 states and 177 transitions. [2022-02-20 23:54:47,112 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 177 transitions. [2022-02-20 23:54:47,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:47,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:47,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:47,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:47,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 166 states, 133 states have (on average 1.330827067669173) internal successors, (177), 165 states have internal predecessors, (177), 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:54:47,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 166 states to 166 states and 177 transitions. [2022-02-20 23:54:47,114 INFO L78 Accepts]: Start accepts. Automaton has 166 states and 177 transitions. Word has length 26 [2022-02-20 23:54:47,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:47,114 INFO L470 AbstractCegarLoop]: Abstraction has 166 states and 177 transitions. [2022-02-20 23:54:47,114 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 6.5) internal successors, (26), 5 states have internal predecessors, (26), 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:54:47,114 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 177 transitions. [2022-02-20 23:54:47,114 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:54:47,114 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:47,114 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:47,124 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:47,322 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:54:47,323 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr43ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:47,323 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:47,323 INFO L85 PathProgramCache]: Analyzing trace with hash -83332022, now seen corresponding path program 1 times [2022-02-20 23:54:47,323 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:47,323 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [748976919] [2022-02-20 23:54:47,323 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:47,323 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:47,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:47,324 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:47,325 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Waiting until timeout for monitored process [2022-02-20 23:54:47,478 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:47,485 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:54:47,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:47,496 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:47,567 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 11 treesize of output 7 [2022-02-20 23:54:47,574 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 11 treesize of output 7 [2022-02-20 23:54:47,619 INFO L356 Elim1Store]: treesize reduction 21, result has 25.0 percent of original size [2022-02-20 23:54:47,620 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:54:47,627 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:54:47,628 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 20 [2022-02-20 23:54:47,678 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:54:47,681 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:54:47,694 INFO L290 TraceCheckUtils]: 0: Hoare triple {12715#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(20bv32, 2bv32); {12715#true} is VALID [2022-02-20 23:54:47,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {12715#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,695 INFO L290 TraceCheckUtils]: 3: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,695 INFO L290 TraceCheckUtils]: 4: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,695 INFO L290 TraceCheckUtils]: 5: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,696 INFO L290 TraceCheckUtils]: 6: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,696 INFO L290 TraceCheckUtils]: 7: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,697 INFO L290 TraceCheckUtils]: 10: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,698 INFO L290 TraceCheckUtils]: 12: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,698 INFO L290 TraceCheckUtils]: 13: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,698 INFO L290 TraceCheckUtils]: 14: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,699 INFO L290 TraceCheckUtils]: 15: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,699 INFO L290 TraceCheckUtils]: 16: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,699 INFO L290 TraceCheckUtils]: 17: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} is VALID [2022-02-20 23:54:47,701 INFO L290 TraceCheckUtils]: 18: Hoare triple {12723#(= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,701 INFO L290 TraceCheckUtils]: 19: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume 0bv32 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,703 INFO L290 TraceCheckUtils]: 20: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1021 {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,703 INFO L290 TraceCheckUtils]: 21: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call main_#t~mem11#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1032-4 {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,704 INFO L290 TraceCheckUtils]: 22: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} assume !!(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,704 INFO L290 TraceCheckUtils]: 23: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} goto; {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:47,705 INFO L290 TraceCheckUtils]: 24: Hoare triple {12775#(and (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1033-4 {12794#(and (= |ULTIMATE.start_main_#t~mem12#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_#t~mem12#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:47,705 INFO L290 TraceCheckUtils]: 25: Hoare triple {12794#(and (= |ULTIMATE.start_main_#t~mem12#1.offset| |ULTIMATE.start_main_~null~0#1.offset|) (= |ULTIMATE.start_main_~null~0#1.offset| (_ bv0 32)) (= |ULTIMATE.start_main_#t~mem12#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !(main_~null~0#1.base == main_#t~mem12#1.base && main_~null~0#1.offset == main_#t~mem12#1.offset);havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {12716#false} is VALID [2022-02-20 23:54:47,705 INFO L290 TraceCheckUtils]: 26: Hoare triple {12716#false} assume !false; {12716#false} is VALID [2022-02-20 23:54:47,705 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:54:47,705 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:47,705 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:47,705 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [748976919] [2022-02-20 23:54:47,706 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [748976919] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:47,706 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:47,706 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:54:47,706 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1404990966] [2022-02-20 23:54:47,706 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:47,706 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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 27 [2022-02-20 23:54:47,706 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:47,706 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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:54:47,734 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:47,734 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:54:47,734 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:47,735 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:54:47,735 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:54:47,735 INFO L87 Difference]: Start difference. First operand 166 states and 177 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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:54:48,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:48,411 INFO L93 Difference]: Finished difference Result 164 states and 174 transitions. [2022-02-20 23:54:48,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:54:48,411 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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 27 [2022-02-20 23:54:48,412 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:48,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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:54:48,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 124 transitions. [2022-02-20 23:54:48,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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:54:48,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 124 transitions. [2022-02-20 23:54:48,413 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 124 transitions. [2022-02-20 23:54:48,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:48,520 INFO L225 Difference]: With dead ends: 164 [2022-02-20 23:54:48,520 INFO L226 Difference]: Without dead ends: 164 [2022-02-20 23:54:48,520 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:54:48,520 INFO L933 BasicCegarLoop]: 95 mSDtfsCounter, 110 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 115 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 110 SdHoareTripleChecker+Valid, 228 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 115 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:48,521 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [110 Valid, 228 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 115 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:54:48,521 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-02-20 23:54:48,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 164. [2022-02-20 23:54:48,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:48,523 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 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:54:48,523 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 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:54:48,523 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 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:54:48,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:48,524 INFO L93 Difference]: Finished difference Result 164 states and 174 transitions. [2022-02-20 23:54:48,524 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 174 transitions. [2022-02-20 23:54:48,525 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:48,525 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:48,525 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 164 states. [2022-02-20 23:54:48,525 INFO L87 Difference]: Start difference. First operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 164 states. [2022-02-20 23:54:48,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:48,527 INFO L93 Difference]: Finished difference Result 164 states and 174 transitions. [2022-02-20 23:54:48,527 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 174 transitions. [2022-02-20 23:54:48,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:48,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:48,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:48,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:48,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 132 states have (on average 1.3181818181818181) internal successors, (174), 163 states have internal predecessors, (174), 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:54:48,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 174 transitions. [2022-02-20 23:54:48,528 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 174 transitions. Word has length 27 [2022-02-20 23:54:48,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:48,528 INFO L470 AbstractCegarLoop]: Abstraction has 164 states and 174 transitions. [2022-02-20 23:54:48,528 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 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:54:48,528 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 174 transitions. [2022-02-20 23:54:48,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:54:48,529 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:48,529 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:48,537 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (19)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:48,729 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:48,729 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr44ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:48,730 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:48,730 INFO L85 PathProgramCache]: Analyzing trace with hash 1522435470, now seen corresponding path program 1 times [2022-02-20 23:54:48,730 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:48,730 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1907034900] [2022-02-20 23:54:48,730 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:48,730 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:48,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:48,731 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:48,739 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (20)] Waiting until timeout for monitored process [2022-02-20 23:54:48,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:48,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 14 conjunts are in the unsatisfiable core [2022-02-20 23:54:48,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:48,908 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:48,914 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:54:48,941 INFO L356 Elim1Store]: treesize reduction 12, result has 40.0 percent of original size [2022-02-20 23:54:48,942 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:54:49,001 INFO L356 Elim1Store]: treesize reduction 16, result has 36.0 percent of original size [2022-02-20 23:54:49,001 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:54:49,040 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:54:49,103 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:49,104 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 27 treesize of output 28 [2022-02-20 23:54:49,120 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 24 treesize of output 12 [2022-02-20 23:54:49,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {13458#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(20bv32, 2bv32); {13458#true} is VALID [2022-02-20 23:54:49,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {13458#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:49,166 INFO L290 TraceCheckUtils]: 2: Hoare triple {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:49,166 INFO L290 TraceCheckUtils]: 3: Hoare triple {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:49,166 INFO L290 TraceCheckUtils]: 4: Hoare triple {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:49,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {13466#(= (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:49,168 INFO L290 TraceCheckUtils]: 6: Hoare triple {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:49,168 INFO L290 TraceCheckUtils]: 7: Hoare triple {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:49,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:49,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {13479#(and (= (select |#valid| |ULTIMATE.start_main_~list~0#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {13492#(and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:54:49,170 INFO L290 TraceCheckUtils]: 10: Hoare triple {13492#(and (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~null~0#1.base|) (_ bv1 1))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {13496#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} is VALID [2022-02-20 23:54:49,171 INFO L290 TraceCheckUtils]: 11: Hoare triple {13496#(and (not (= |ULTIMATE.start_main_~null~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc4#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:49,171 INFO L290 TraceCheckUtils]: 12: Hoare triple {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:49,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {13507#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:49,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {13507#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= |ULTIMATE.start_main_#t~mem5#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:49,174 INFO L290 TraceCheckUtils]: 15: Hoare triple {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} is VALID [2022-02-20 23:54:49,174 INFO L290 TraceCheckUtils]: 16: Hoare triple {13500#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~null~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))))} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {13517#(not (= |ULTIMATE.start_main_#t~mem6#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {13517#(not (= |ULTIMATE.start_main_#t~mem6#1.base| |ULTIMATE.start_main_~null~0#1.base|))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,175 INFO L290 TraceCheckUtils]: 18: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,176 INFO L290 TraceCheckUtils]: 19: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume 0bv32 != main_#t~nondet7#1;havoc main_#t~nondet7#1; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,176 INFO L290 TraceCheckUtils]: 20: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1021 {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,177 INFO L290 TraceCheckUtils]: 21: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call main_#t~mem11#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1032-4 {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,177 INFO L290 TraceCheckUtils]: 22: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !!(~unnamed1~0~BLACK == main_#t~mem11#1);havoc main_#t~mem11#1; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,177 INFO L290 TraceCheckUtils]: 23: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} goto; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,178 INFO L290 TraceCheckUtils]: 24: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} SUMMARY for call main_#t~mem12#1.base, main_#t~mem12#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1033-4 {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !!(main_~null~0#1.base == main_#t~mem12#1.base && main_~null~0#1.offset == main_#t~mem12#1.offset);havoc main_#t~mem12#1.base, main_#t~mem12#1.offset; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,179 INFO L290 TraceCheckUtils]: 26: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} goto; {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} is VALID [2022-02-20 23:54:49,179 INFO L290 TraceCheckUtils]: 27: Hoare triple {13521#(not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_~null~0#1.base|))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {13459#false} is VALID [2022-02-20 23:54:49,179 INFO L290 TraceCheckUtils]: 28: Hoare triple {13459#false} assume !false; {13459#false} is VALID [2022-02-20 23:54:49,179 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:54:49,179 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:49,180 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:49,180 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1907034900] [2022-02-20 23:54:49,180 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1907034900] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:49,180 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:49,180 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 23:54:49,180 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [857630477] [2022-02-20 23:54:49,180 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:49,180 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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 29 [2022-02-20 23:54:49,180 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:49,181 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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:54:49,209 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:49,209 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:54:49,209 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:49,210 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:54:49,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:54:49,210 INFO L87 Difference]: Start difference. First operand 164 states and 174 transitions. Second operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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:54:51,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:51,095 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:51,096 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:54:51,096 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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 29 [2022-02-20 23:54:51,096 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:51,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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:54:51,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 156 transitions. [2022-02-20 23:54:51,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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:54:51,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 156 transitions. [2022-02-20 23:54:51,097 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 156 transitions. [2022-02-20 23:54:51,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 156 edges. 156 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:51,245 INFO L225 Difference]: With dead ends: 172 [2022-02-20 23:54:51,245 INFO L226 Difference]: Without dead ends: 172 [2022-02-20 23:54:51,245 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=146, Invalid=360, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:54:51,245 INFO L933 BasicCegarLoop]: 60 mSDtfsCounter, 188 mSDsluCounter, 216 mSDsCounter, 0 mSdLazyCounter, 437 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 188 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 460 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 437 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:51,246 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [188 Valid, 276 Invalid, 460 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 437 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:54:51,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 172 states. [2022-02-20 23:54:51,247 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 172 to 164. [2022-02-20 23:54:51,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:51,248 INFO L82 GeneralOperation]: Start isEquivalent. First operand 172 states. Second operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 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:54:51,248 INFO L74 IsIncluded]: Start isIncluded. First operand 172 states. Second operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 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:54:51,248 INFO L87 Difference]: Start difference. First operand 172 states. Second operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 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:54:51,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:51,249 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:51,249 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 181 transitions. [2022-02-20 23:54:51,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:51,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:51,250 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 172 states. [2022-02-20 23:54:51,250 INFO L87 Difference]: Start difference. First operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 172 states. [2022-02-20 23:54:51,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:51,251 INFO L93 Difference]: Finished difference Result 172 states and 181 transitions. [2022-02-20 23:54:51,252 INFO L276 IsEmpty]: Start isEmpty. Operand 172 states and 181 transitions. [2022-02-20 23:54:51,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:51,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:51,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:51,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:51,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 132 states have (on average 1.3106060606060606) internal successors, (173), 163 states have internal predecessors, (173), 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:54:51,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 173 transitions. [2022-02-20 23:54:51,253 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 173 transitions. Word has length 29 [2022-02-20 23:54:51,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:51,254 INFO L470 AbstractCegarLoop]: Abstraction has 164 states and 173 transitions. [2022-02-20 23:54:51,254 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.9) internal successors, (29), 10 states have internal predecessors, (29), 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:54:51,254 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 173 transitions. [2022-02-20 23:54:51,254 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:54:51,254 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:51,254 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:51,269 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (20)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:51,462 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:51,462 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr64ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:51,463 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:51,463 INFO L85 PathProgramCache]: Analyzing trace with hash -296461252, now seen corresponding path program 1 times [2022-02-20 23:54:51,463 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:51,463 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1618770347] [2022-02-20 23:54:51,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:51,463 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:51,463 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:51,464 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:51,466 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (21)] Waiting until timeout for monitored process [2022-02-20 23:54:51,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:51,555 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:54:51,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:51,566 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:51,584 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:54:51,648 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:54:51,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {14260#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(20bv32, 2bv32); {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {14260#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 2: Hoare triple {14260#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 3: Hoare triple {14260#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 4: Hoare triple {14260#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {14260#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 6: Hoare triple {14260#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {14260#true} is VALID [2022-02-20 23:54:51,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {14260#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {14260#true} is VALID [2022-02-20 23:54:51,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {14260#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,662 INFO L290 TraceCheckUtils]: 10: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,662 INFO L290 TraceCheckUtils]: 11: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,662 INFO L290 TraceCheckUtils]: 12: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,663 INFO L290 TraceCheckUtils]: 13: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,663 INFO L290 TraceCheckUtils]: 14: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,663 INFO L290 TraceCheckUtils]: 15: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} goto; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,664 INFO L290 TraceCheckUtils]: 17: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,664 INFO L290 TraceCheckUtils]: 18: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem14#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1045 {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,664 INFO L290 TraceCheckUtils]: 19: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1045-2 {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,665 INFO L290 TraceCheckUtils]: 21: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,665 INFO L290 TraceCheckUtils]: 22: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,666 INFO L290 TraceCheckUtils]: 23: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} is VALID [2022-02-20 23:54:51,666 INFO L290 TraceCheckUtils]: 24: Hoare triple {14289#(= ~unnamed1~0~BLACK (select (select |#memory_int| |ULTIMATE.start_main_~list~0#1.base|) (bvadd (_ bv8 32) |ULTIMATE.start_main_~list~0#1.offset|)))} SUMMARY for call main_#t~mem18#1 := read~intINTTYPE4(main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1058 {14338#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem18#1|)} is VALID [2022-02-20 23:54:51,667 INFO L290 TraceCheckUtils]: 25: Hoare triple {14338#(= ~unnamed1~0~BLACK |ULTIMATE.start_main_#t~mem18#1|)} assume ~unnamed1~0~RED == main_#t~mem18#1;havoc main_#t~mem18#1; {14261#false} is VALID [2022-02-20 23:54:51,667 INFO L290 TraceCheckUtils]: 26: Hoare triple {14261#false} SUMMARY for call main_#t~mem19#1.base, main_#t~mem19#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1060 {14261#false} is VALID [2022-02-20 23:54:51,667 INFO L290 TraceCheckUtils]: 27: Hoare triple {14261#false} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem19#1.base, main_#t~mem19#1.offset;havoc main_#t~mem19#1.base, main_#t~mem19#1.offset; {14261#false} is VALID [2022-02-20 23:54:51,667 INFO L290 TraceCheckUtils]: 28: Hoare triple {14261#false} assume 0bv32 == main_~list~0#1.offset; {14261#false} is VALID [2022-02-20 23:54:51,667 INFO L290 TraceCheckUtils]: 29: Hoare triple {14261#false} assume !~bvult32(main_~list~0#1.base, #StackHeapBarrier); {14261#false} is VALID [2022-02-20 23:54:51,667 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:51,667 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:51,668 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:51,668 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1618770347] [2022-02-20 23:54:51,668 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1618770347] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:51,668 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:51,668 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:54:51,668 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1613541126] [2022-02-20 23:54:51,668 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:51,669 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:51,669 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:51,669 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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:54:51,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:51,703 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:54:51,703 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:51,703 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:54:51,703 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:54:51,703 INFO L87 Difference]: Start difference. First operand 164 states and 173 transitions. Second operand has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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:54:52,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:52,247 INFO L93 Difference]: Finished difference Result 173 states and 182 transitions. [2022-02-20 23:54:52,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:54:52,247 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:52,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:52,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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:54:52,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 144 transitions. [2022-02-20 23:54:52,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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:54:52,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 144 transitions. [2022-02-20 23:54:52,248 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 144 transitions. [2022-02-20 23:54:52,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 144 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:52,356 INFO L225 Difference]: With dead ends: 173 [2022-02-20 23:54:52,357 INFO L226 Difference]: Without dead ends: 173 [2022-02-20 23:54:52,357 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 27 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:54:52,357 INFO L933 BasicCegarLoop]: 106 mSDtfsCounter, 7 mSDsluCounter, 179 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 285 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:52,357 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 285 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:54:52,358 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-02-20 23:54:52,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 167. [2022-02-20 23:54:52,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:52,359 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 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:54:52,360 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 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:54:52,360 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 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:54:52,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:52,361 INFO L93 Difference]: Finished difference Result 173 states and 182 transitions. [2022-02-20 23:54:52,361 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 182 transitions. [2022-02-20 23:54:52,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:52,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:52,362 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 173 states. [2022-02-20 23:54:52,362 INFO L87 Difference]: Start difference. First operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 173 states. [2022-02-20 23:54:52,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:52,363 INFO L93 Difference]: Finished difference Result 173 states and 182 transitions. [2022-02-20 23:54:52,363 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 182 transitions. [2022-02-20 23:54:52,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:52,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:52,364 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:52,364 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:52,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 135 states have (on average 1.3037037037037038) internal successors, (176), 166 states have internal predecessors, (176), 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:54:52,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 176 transitions. [2022-02-20 23:54:52,365 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 176 transitions. Word has length 30 [2022-02-20 23:54:52,365 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:52,366 INFO L470 AbstractCegarLoop]: Abstraction has 167 states and 176 transitions. [2022-02-20 23:54:52,366 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 7.5) internal successors, (30), 4 states have internal predecessors, (30), 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:54:52,366 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 176 transitions. [2022-02-20 23:54:52,366 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:54:52,366 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:52,366 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:52,373 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (21)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:52,573 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:52,574 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr74ASSERT_VIOLATIONMEMORY_FREE === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:52,574 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:52,574 INFO L85 PathProgramCache]: Analyzing trace with hash -275466542, now seen corresponding path program 1 times [2022-02-20 23:54:52,574 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:52,574 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1844989241] [2022-02-20 23:54:52,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:52,574 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:52,574 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:52,576 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:52,578 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (22)] Waiting until timeout for monitored process [2022-02-20 23:54:52,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:52,670 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 2 conjunts are in the unsatisfiable core [2022-02-20 23:54:52,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:52,678 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:52,752 INFO L290 TraceCheckUtils]: 0: Hoare triple {15041#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(20bv32, 2bv32); {15041#true} is VALID [2022-02-20 23:54:52,752 INFO L290 TraceCheckUtils]: 1: Hoare triple {15041#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {15041#true} is VALID [2022-02-20 23:54:52,752 INFO L290 TraceCheckUtils]: 2: Hoare triple {15041#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {15041#true} is VALID [2022-02-20 23:54:52,753 INFO L290 TraceCheckUtils]: 3: Hoare triple {15041#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {15041#true} is VALID [2022-02-20 23:54:52,753 INFO L290 TraceCheckUtils]: 4: Hoare triple {15041#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {15041#true} is VALID [2022-02-20 23:54:52,753 INFO L290 TraceCheckUtils]: 5: Hoare triple {15041#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,753 INFO L290 TraceCheckUtils]: 6: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,753 INFO L290 TraceCheckUtils]: 7: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,754 INFO L290 TraceCheckUtils]: 9: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,754 INFO L290 TraceCheckUtils]: 10: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_~null~0#1.base, main_~null~0#1.offset;main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} goto; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,755 INFO L290 TraceCheckUtils]: 14: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem13#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1042-4 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,756 INFO L290 TraceCheckUtils]: 15: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(~unnamed1~0~BLACK == main_#t~mem13#1);havoc main_#t~mem13#1; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,756 INFO L290 TraceCheckUtils]: 16: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} goto; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,756 INFO L290 TraceCheckUtils]: 17: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem14#1 := read~intINTTYPE4(main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1045 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(~unnamed1~0~RED == main_#t~mem14#1);havoc main_#t~mem14#1; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem17#1.base, main_#t~mem17#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1045-2 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,757 INFO L290 TraceCheckUtils]: 21: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem17#1.base, main_#t~mem17#1.offset;havoc main_#t~mem17#1.base, main_#t~mem17#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(main_~null~0#1.base != main_~end~0#1.base || main_~null~0#1.offset != main_~end~0#1.offset); {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,758 INFO L290 TraceCheckUtils]: 23: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !!(main_~null~0#1.base != main_~list~0#1.base || main_~null~0#1.offset != main_~list~0#1.offset); {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,758 INFO L290 TraceCheckUtils]: 24: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem18#1 := read~intINTTYPE4(main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1058 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,758 INFO L290 TraceCheckUtils]: 25: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !(~unnamed1~0~RED == main_#t~mem18#1);havoc main_#t~mem18#1; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,759 INFO L290 TraceCheckUtils]: 26: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} SUMMARY for call main_#t~mem21#1.base, main_#t~mem21#1.offset := read~$Pointer$(main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1067 {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,759 INFO L290 TraceCheckUtils]: 27: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem21#1.base, main_#t~mem21#1.offset;havoc main_#t~mem21#1.base, main_#t~mem21#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,759 INFO L290 TraceCheckUtils]: 28: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume 0bv32 == main_~list~0#1.offset; {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} is VALID [2022-02-20 23:54:52,759 INFO L290 TraceCheckUtils]: 29: Hoare triple {15061#(bvult |ULTIMATE.start_main_~list~0#1.base| |#StackHeapBarrier|)} assume !~bvult32(main_~list~0#1.base, #StackHeapBarrier); {15042#false} is VALID [2022-02-20 23:54:52,760 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:54:52,760 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:52,760 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:52,760 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1844989241] [2022-02-20 23:54:52,760 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1844989241] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:52,760 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:52,760 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:54:52,760 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [945991134] [2022-02-20 23:54:52,760 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:52,760 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:52,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:52,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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:54:52,788 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:52,788 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:54:52,788 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:52,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:54:52,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:54:52,789 INFO L87 Difference]: Start difference. First operand 167 states and 176 transitions. Second operand has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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:54:53,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:53,031 INFO L93 Difference]: Finished difference Result 169 states and 178 transitions. [2022-02-20 23:54:53,031 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:54:53,031 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:53,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:53,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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:54:53,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 133 transitions. [2022-02-20 23:54:53,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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:54:53,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 133 transitions. [2022-02-20 23:54:53,033 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 133 transitions. [2022-02-20 23:54:53,145 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:53,146 INFO L225 Difference]: With dead ends: 169 [2022-02-20 23:54:53,147 INFO L226 Difference]: Without dead ends: 169 [2022-02-20 23:54:53,147 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 28 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:54:53,147 INFO L933 BasicCegarLoop]: 109 mSDtfsCounter, 71 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 35 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:53,147 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [71 Valid, 125 Invalid, 35 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:54:53,148 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2022-02-20 23:54:53,149 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 169. [2022-02-20 23:54:53,149 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:53,149 INFO L82 GeneralOperation]: Start isEquivalent. First operand 169 states. Second operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 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:54:53,150 INFO L74 IsIncluded]: Start isIncluded. First operand 169 states. Second operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 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:54:53,150 INFO L87 Difference]: Start difference. First operand 169 states. Second operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 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:54:53,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:53,151 INFO L93 Difference]: Finished difference Result 169 states and 178 transitions. [2022-02-20 23:54:53,151 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 178 transitions. [2022-02-20 23:54:53,151 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:53,151 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:53,152 INFO L74 IsIncluded]: Start isIncluded. First operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 169 states. [2022-02-20 23:54:53,152 INFO L87 Difference]: Start difference. First operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 169 states. [2022-02-20 23:54:53,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:53,153 INFO L93 Difference]: Finished difference Result 169 states and 178 transitions. [2022-02-20 23:54:53,153 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 178 transitions. [2022-02-20 23:54:53,154 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:53,154 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:53,154 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:53,154 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:53,154 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 169 states, 137 states have (on average 1.2992700729927007) internal successors, (178), 168 states have internal predecessors, (178), 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:54:53,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 169 states to 169 states and 178 transitions. [2022-02-20 23:54:53,155 INFO L78 Accepts]: Start accepts. Automaton has 169 states and 178 transitions. Word has length 30 [2022-02-20 23:54:53,155 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:53,155 INFO L470 AbstractCegarLoop]: Abstraction has 169 states and 178 transitions. [2022-02-20 23:54:53,155 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 15.0) internal successors, (30), 3 states have internal predecessors, (30), 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:54:53,155 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states and 178 transitions. [2022-02-20 23:54:53,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:54:53,156 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:53,156 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:53,163 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (22)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:53,363 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:53,363 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr34REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:53,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:53,363 INFO L85 PathProgramCache]: Analyzing trace with hash 2127502605, now seen corresponding path program 1 times [2022-02-20 23:54:53,363 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:53,363 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [895138068] [2022-02-20 23:54:53,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:53,364 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:53,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:53,364 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:53,365 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (23)] Waiting until timeout for monitored process [2022-02-20 23:54:53,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:53,539 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:54:53,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:53,550 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:53,602 INFO L356 Elim1Store]: treesize reduction 15, result has 46.4 percent of original size [2022-02-20 23:54:53,602 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 24 [2022-02-20 23:54:53,634 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:54:53,702 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:53,702 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 28 treesize of output 29 [2022-02-20 23:54:53,727 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 0: Hoare triple {15809#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(20bv32, 2bv32); {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {15809#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 3: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 4: Hoare triple {15809#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 5: Hoare triple {15809#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 6: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 7: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 8: Hoare triple {15809#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 9: Hoare triple {15809#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 10: Hoare triple {15809#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 11: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 12: Hoare triple {15809#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 13: Hoare triple {15809#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 14: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 15: Hoare triple {15809#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,788 INFO L290 TraceCheckUtils]: 16: Hoare triple {15809#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {15809#true} is VALID [2022-02-20 23:54:53,789 INFO L290 TraceCheckUtils]: 17: Hoare triple {15809#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {15809#true} is VALID [2022-02-20 23:54:53,789 INFO L290 TraceCheckUtils]: 18: Hoare triple {15809#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {15809#true} is VALID [2022-02-20 23:54:53,789 INFO L290 TraceCheckUtils]: 19: Hoare triple {15809#true} assume !(0bv32 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {15809#true} is VALID [2022-02-20 23:54:53,789 INFO L290 TraceCheckUtils]: 20: Hoare triple {15809#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~RED, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1025 {15874#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:53,790 INFO L290 TraceCheckUtils]: 21: Hoare triple {15874#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32); {15878#(and (= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc8#1.base|)))} is VALID [2022-02-20 23:54:53,791 INFO L290 TraceCheckUtils]: 22: Hoare triple {15878#(and (= (select |#valid| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv1 1)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))) (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc8#1.base|)))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1026 {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:53,791 INFO L290 TraceCheckUtils]: 23: Hoare triple {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:53,792 INFO L290 TraceCheckUtils]: 24: Hoare triple {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1027 {15889#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem9#1.base|) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:53,794 INFO L290 TraceCheckUtils]: 25: Hoare triple {15889#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem9#1.base|) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem9#1.base, ~bvadd32(4bv32, main_#t~mem9#1.offset), 4bv32); srcloc: L1027-1 {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:53,794 INFO L290 TraceCheckUtils]: 26: Hoare triple {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} is VALID [2022-02-20 23:54:53,795 INFO L290 TraceCheckUtils]: 27: Hoare triple {15882#(and (= (_ bv1 1) (select |#valid| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1028 {15899#(and (exists ((|ULTIMATE.start_main_~end~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem10#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))) (= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:54:53,796 INFO L290 TraceCheckUtils]: 28: Hoare triple {15899#(and (exists ((|ULTIMATE.start_main_~end~0#1.base| (_ BitVec 32))) (and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~mem10#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))))) (= (select |#valid| |ULTIMATE.start_main_#t~mem10#1.base|) (_ bv1 1)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {15903#(and (exists ((|v_ULTIMATE.start_main_~end~0#1.base_87| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_main_~end~0#1.base_87| |ULTIMATE.start_main_~end~0#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |v_ULTIMATE.start_main_~end~0#1.base_87|) (_ bv1 1))))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} is VALID [2022-02-20 23:54:53,796 INFO L290 TraceCheckUtils]: 29: Hoare triple {15903#(and (exists ((|v_ULTIMATE.start_main_~end~0#1.base_87| (_ BitVec 32))) (and (not (= |v_ULTIMATE.start_main_~end~0#1.base_87| |ULTIMATE.start_main_~end~0#1.base|)) (= (_ bv0 1) (bvadd (select |#valid| |v_ULTIMATE.start_main_~end~0#1.base_87|) (_ bv1 1))))) (= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1)))} assume !(1bv1 == #valid[main_~end~0#1.base]); {15810#false} is VALID [2022-02-20 23:54:53,797 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:54:53,797 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:53,797 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:53,797 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [895138068] [2022-02-20 23:54:53,797 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [895138068] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:53,797 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:53,797 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:54:53,797 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [874286419] [2022-02-20 23:54:53,797 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:53,797 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:53,797 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:53,797 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:53,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:53,830 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:54:53,830 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:53,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:54:53,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=35, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:53,831 INFO L87 Difference]: Start difference. First operand 169 states and 178 transitions. Second operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:54,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:54,786 INFO L93 Difference]: Finished difference Result 168 states and 177 transitions. [2022-02-20 23:54:54,786 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:54:54,786 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:54,786 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:54,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:54,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 125 transitions. [2022-02-20 23:54:54,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:54,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 125 transitions. [2022-02-20 23:54:54,788 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 125 transitions. [2022-02-20 23:54:54,884 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:54,885 INFO L225 Difference]: With dead ends: 168 [2022-02-20 23:54:54,885 INFO L226 Difference]: Without dead ends: 168 [2022-02-20 23:54:54,886 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:54:54,886 INFO L933 BasicCegarLoop]: 89 mSDtfsCounter, 52 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 208 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 262 SdHoareTripleChecker+Invalid, 350 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 208 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 130 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:54,886 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 262 Invalid, 350 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 208 Invalid, 0 Unknown, 130 Unchecked, 0.3s Time] [2022-02-20 23:54:54,887 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-02-20 23:54:54,888 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 168. [2022-02-20 23:54:54,888 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:54,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 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:54:54,888 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 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:54:54,888 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 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:54:54,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:54,890 INFO L93 Difference]: Finished difference Result 168 states and 177 transitions. [2022-02-20 23:54:54,897 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 177 transitions. [2022-02-20 23:54:54,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:54,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:54,897 INFO L74 IsIncluded]: Start isIncluded. First operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:54,897 INFO L87 Difference]: Start difference. First operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 168 states. [2022-02-20 23:54:54,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:54,899 INFO L93 Difference]: Finished difference Result 168 states and 177 transitions. [2022-02-20 23:54:54,899 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 177 transitions. [2022-02-20 23:54:54,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:54,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:54,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:54,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:54,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 168 states, 137 states have (on average 1.2919708029197081) internal successors, (177), 167 states have internal predecessors, (177), 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:54:54,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 177 transitions. [2022-02-20 23:54:54,901 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 177 transitions. Word has length 30 [2022-02-20 23:54:54,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:54,901 INFO L470 AbstractCegarLoop]: Abstraction has 168 states and 177 transitions. [2022-02-20 23:54:54,901 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:54,901 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 177 transitions. [2022-02-20 23:54:54,901 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:54:54,901 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:54,902 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:54:54,912 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (23)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:55,110 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:55,110 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr35REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:55,110 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:55,110 INFO L85 PathProgramCache]: Analyzing trace with hash 2127502606, now seen corresponding path program 1 times [2022-02-20 23:54:55,111 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:55,111 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1355033780] [2022-02-20 23:54:55,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:55,111 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:55,111 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:55,112 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:55,112 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (24)] Waiting until timeout for monitored process [2022-02-20 23:54:55,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:55,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 19 conjunts are in the unsatisfiable core [2022-02-20 23:54:55,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:55,311 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:54:55,354 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:54:55,361 INFO L356 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2022-02-20 23:54:55,362 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2022-02-20 23:54:55,387 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 11 treesize of output 7 [2022-02-20 23:54:55,395 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:54:55,474 INFO L356 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2022-02-20 23:54:55,474 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 38 treesize of output 37 [2022-02-20 23:54:55,480 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 18 treesize of output 20 [2022-02-20 23:54:55,506 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 13 [2022-02-20 23:54:55,514 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 15 treesize of output 7 [2022-02-20 23:54:55,547 INFO L290 TraceCheckUtils]: 0: Hoare triple {16582#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(20bv32, 2bv32); {16582#true} is VALID [2022-02-20 23:54:55,548 INFO L290 TraceCheckUtils]: 1: Hoare triple {16582#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset, main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_#t~mem5#1.base, main_#t~mem5#1.offset, main_#t~mem6#1.base, main_#t~mem6#1.offset, main_#t~nondet7#1, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~mem9#1.base, main_#t~mem9#1.offset, main_#t~mem10#1.base, main_#t~mem10#1.offset, main_#t~mem11#1, main_#t~mem12#1.base, main_#t~mem12#1.offset, main_#t~nondet3#1, main_#t~mem13#1, main_#t~mem14#1, main_#t~mem15#1.base, main_#t~mem15#1.offset, main_#t~mem16#1, main_#t~mem17#1.base, main_#t~mem17#1.offset, main_#t~mem18#1, main_#t~mem19#1.base, main_#t~mem19#1.offset, main_#t~mem20#1.base, main_#t~mem20#1.offset, main_#t~mem21#1.base, main_#t~mem21#1.offset, main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset;call main_#t~malloc1#1.base, main_#t~malloc1#1.offset := #Ultimate.allocOnHeap(12bv32);main_~null~0#1.base, main_~null~0#1.offset := main_#t~malloc1#1.base, main_#t~malloc1#1.offset;havoc main_#t~malloc1#1.base, main_#t~malloc1#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,548 INFO L290 TraceCheckUtils]: 2: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, main_~null~0#1.offset, 4bv32); srcloc: L999 {16582#true} is VALID [2022-02-20 23:54:55,548 INFO L290 TraceCheckUtils]: 3: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(0bv32, 0bv32, main_~null~0#1.base, ~bvadd32(4bv32, main_~null~0#1.offset), 4bv32); srcloc: L999-1 {16582#true} is VALID [2022-02-20 23:54:55,548 INFO L290 TraceCheckUtils]: 4: Hoare triple {16582#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~null~0#1.base, ~bvadd32(8bv32, main_~null~0#1.offset), 4bv32); srcloc: L1000 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {16582#true} call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnHeap(12bv32);main_~list~0#1.base, main_~list~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 6: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, main_~list~0#1.offset, 4bv32); srcloc: L1004 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~list~0#1.base, ~bvadd32(4bv32, main_~list~0#1.offset), 4bv32); srcloc: L1004-1 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {16582#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~BLACK, main_~list~0#1.base, ~bvadd32(8bv32, main_~list~0#1.offset), 4bv32); srcloc: L1005 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 9: Hoare triple {16582#true} main_~end~0#1.base, main_~end~0#1.offset := main_~list~0#1.base, main_~list~0#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 10: Hoare triple {16582#true} assume !!(0bv32 != main_#t~nondet3#1);havoc main_#t~nondet3#1;call main_#t~malloc4#1.base, main_#t~malloc4#1.offset := #Ultimate.allocOnHeap(12bv32); {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 11: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(main_#t~malloc4#1.base, main_#t~malloc4#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1014 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 12: Hoare triple {16582#true} havoc main_#t~malloc4#1.base, main_#t~malloc4#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 13: Hoare triple {16582#true} SUMMARY for call main_#t~mem5#1.base, main_#t~mem5#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1015 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem5#1.base, ~bvadd32(4bv32, main_#t~mem5#1.offset), 4bv32); srcloc: L1015-1 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 15: Hoare triple {16582#true} havoc main_#t~mem5#1.base, main_#t~mem5#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {16582#true} SUMMARY for call main_#t~mem6#1.base, main_#t~mem6#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1016 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 17: Hoare triple {16582#true} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem6#1.base, main_#t~mem6#1.offset;havoc main_#t~mem6#1.base, main_#t~mem6#1.offset; {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {16582#true} SUMMARY for call write~$Pointer$(main_~null~0#1.base, main_~null~0#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1017 {16582#true} is VALID [2022-02-20 23:54:55,549 INFO L290 TraceCheckUtils]: 19: Hoare triple {16582#true} assume !(0bv32 != main_#t~nondet7#1);havoc main_#t~nondet7#1; {16582#true} is VALID [2022-02-20 23:54:55,550 INFO L290 TraceCheckUtils]: 20: Hoare triple {16582#true} SUMMARY for call write~intINTTYPE4(~unnamed1~0~RED, main_~end~0#1.base, ~bvadd32(8bv32, main_~end~0#1.offset), 4bv32); srcloc: L1025 {16647#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} is VALID [2022-02-20 23:54:55,550 INFO L290 TraceCheckUtils]: 21: Hoare triple {16647#(= (select |#valid| |ULTIMATE.start_main_~end~0#1.base|) (_ bv1 1))} call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnHeap(12bv32); {16651#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc8#1.base|)) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv12 32)) (= (_ bv0 32) |ULTIMATE.start_main_#t~malloc8#1.offset|))} is VALID [2022-02-20 23:54:55,552 INFO L290 TraceCheckUtils]: 22: Hoare triple {16651#(and (not (= |ULTIMATE.start_main_~end~0#1.base| |ULTIMATE.start_main_#t~malloc8#1.base|)) (= (select |#length| |ULTIMATE.start_main_#t~malloc8#1.base|) (_ bv12 32)) (= (_ bv0 32) |ULTIMATE.start_main_#t~malloc8#1.offset|))} SUMMARY for call write~$Pointer$(main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1026 {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:55,556 INFO L290 TraceCheckUtils]: 23: Hoare triple {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:55,557 INFO L290 TraceCheckUtils]: 24: Hoare triple {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem9#1.base, main_#t~mem9#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1027 {16662#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem9#1.base|))} is VALID [2022-02-20 23:54:55,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {16662#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)) (= (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) |ULTIMATE.start_main_#t~mem9#1.base|))} SUMMARY for call write~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, main_#t~mem9#1.base, ~bvadd32(4bv32, main_#t~mem9#1.offset), 4bv32); srcloc: L1027-1 {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:55,560 INFO L290 TraceCheckUtils]: 26: Hoare triple {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} havoc main_#t~mem9#1.base, main_#t~mem9#1.offset; {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} is VALID [2022-02-20 23:54:55,560 INFO L290 TraceCheckUtils]: 27: Hoare triple {16655#(and (not (= |ULTIMATE.start_main_~end~0#1.base| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|))) (= (select |#length| (select (select |#memory_$Pointer$.base| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|)) (_ bv12 32)) (= (select (select |#memory_$Pointer$.offset| |ULTIMATE.start_main_~end~0#1.base|) |ULTIMATE.start_main_~end~0#1.offset|) (_ bv0 32)))} SUMMARY for call main_#t~mem10#1.base, main_#t~mem10#1.offset := read~$Pointer$(main_~end~0#1.base, main_~end~0#1.offset, 4bv32); srcloc: L1028 {16672#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| (_ bv0 32)) (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|)))} is VALID [2022-02-20 23:54:55,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {16672#(and (= |ULTIMATE.start_main_#t~mem10#1.offset| (_ bv0 32)) (= (_ bv12 32) (select |#length| |ULTIMATE.start_main_#t~mem10#1.base|)))} main_~end~0#1.base, main_~end~0#1.offset := main_#t~mem10#1.base, main_#t~mem10#1.offset;havoc main_#t~mem10#1.base, main_#t~mem10#1.offset; {16676#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} is VALID [2022-02-20 23:54:55,561 INFO L290 TraceCheckUtils]: 29: Hoare triple {16676#(and (= (select |#length| |ULTIMATE.start_main_~end~0#1.base|) (_ bv12 32)) (= |ULTIMATE.start_main_~end~0#1.offset| (_ bv0 32)))} assume !((~bvule32(~bvadd32(4bv32, main_~end~0#1.offset), #length[main_~end~0#1.base]) && ~bvule32(main_~end~0#1.offset, ~bvadd32(4bv32, main_~end~0#1.offset))) && ~bvule32(0bv32, main_~end~0#1.offset)); {16583#false} is VALID [2022-02-20 23:54:55,561 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:54:55,561 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 23:54:55,561 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 23:54:55,561 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1355033780] [2022-02-20 23:54:55,561 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1355033780] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:54:55,561 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:54:55,561 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:54:55,561 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1732854060] [2022-02-20 23:54:55,561 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:54:55,562 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:55,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:54:55,562 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:55,591 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:55,592 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:54:55,592 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 23:54:55,592 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:54:55,592 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:54:55,592 INFO L87 Difference]: Start difference. First operand 168 states and 177 transitions. Second operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:57,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:57,414 INFO L93 Difference]: Finished difference Result 163 states and 172 transitions. [2022-02-20 23:54:57,415 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:54:57,415 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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 30 [2022-02-20 23:54:57,415 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:54:57,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:57,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 142 transitions. [2022-02-20 23:54:57,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:57,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 142 transitions. [2022-02-20 23:54:57,416 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 142 transitions. [2022-02-20 23:54:57,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:54:57,533 INFO L225 Difference]: With dead ends: 163 [2022-02-20 23:54:57,533 INFO L226 Difference]: Without dead ends: 163 [2022-02-20 23:54:57,533 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:54:57,534 INFO L933 BasicCegarLoop]: 97 mSDtfsCounter, 68 mSDsluCounter, 290 mSDsCounter, 0 mSdLazyCounter, 440 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 387 SdHoareTripleChecker+Invalid, 458 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 440 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:54:57,534 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [68 Valid, 387 Invalid, 458 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 440 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:54:57,534 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 163 states. [2022-02-20 23:54:57,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 163 to 153. [2022-02-20 23:54:57,535 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:54:57,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 163 states. Second operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 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:54:57,536 INFO L74 IsIncluded]: Start isIncluded. First operand 163 states. Second operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 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:54:57,536 INFO L87 Difference]: Start difference. First operand 163 states. Second operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 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:54:57,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:57,537 INFO L93 Difference]: Finished difference Result 163 states and 172 transitions. [2022-02-20 23:54:57,537 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 172 transitions. [2022-02-20 23:54:57,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:57,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:57,538 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 163 states. [2022-02-20 23:54:57,538 INFO L87 Difference]: Start difference. First operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 163 states. [2022-02-20 23:54:57,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:54:57,539 INFO L93 Difference]: Finished difference Result 163 states and 172 transitions. [2022-02-20 23:54:57,540 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 172 transitions. [2022-02-20 23:54:57,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:54:57,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:54:57,540 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:54:57,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:54:57,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 129 states have (on average 1.248062015503876) internal successors, (161), 152 states have internal predecessors, (161), 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:54:57,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 161 transitions. [2022-02-20 23:54:57,541 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 161 transitions. Word has length 30 [2022-02-20 23:54:57,542 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:54:57,542 INFO L470 AbstractCegarLoop]: Abstraction has 153 states and 161 transitions. [2022-02-20 23:54:57,542 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 4.285714285714286) internal successors, (30), 8 states have internal predecessors, (30), 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:54:57,542 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 161 transitions. [2022-02-20 23:54:57,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:54:57,542 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:54:57,542 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, 1, 1, 1, 1] [2022-02-20 23:54:57,569 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (24)] Forceful destruction successful, exit code 0 [2022-02-20 23:54:57,759 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 23:54:57,759 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr59REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 73 more)] === [2022-02-20 23:54:57,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:54:57,760 INFO L85 PathProgramCache]: Analyzing trace with hash 1259070453, now seen corresponding path program 1 times [2022-02-20 23:54:57,760 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 23:54:57,760 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1918325016] [2022-02-20 23:54:57,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:54:57,760 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 23:54:57,760 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 23:54:57,761 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 23:54:57,762 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (25)] Waiting until timeout for monitored process [2022-02-20 23:54:57,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:57,874 INFO L263 TraceCheckSpWp]: Trace formula consists of 163 conjuncts, 16 conjunts are in the unsatisfiable core [2022-02-20 23:54:57,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:54:57,883 INFO L286 TraceCheckSpWp]: Computing forward predicates...