./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/memsafety/lockfree-3.3.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/memsafety/lockfree-3.3.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 1db117ae3c729419255b5da4a7f4ecd64b2d99a167d11f22266a773c4ff13cdb --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:44:23,383 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:44:23,385 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:44:23,408 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:44:23,409 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:44:23,410 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:44:23,411 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:44:23,413 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:44:23,414 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:44:23,415 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:44:23,415 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:44:23,416 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:44:23,417 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:44:23,417 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:44:23,418 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:44:23,419 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:44:23,420 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:44:23,421 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:44:23,425 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:44:23,431 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:44:23,433 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:44:23,435 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:44:23,436 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:44:23,437 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:44:23,442 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:44:23,442 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:44:23,442 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:44:23,443 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:44:23,444 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:44:23,445 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:44:23,445 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:44:23,446 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:44:23,448 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:44:23,449 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:44:23,450 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:44:23,450 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:44:23,450 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:44:23,451 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:44:23,451 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:44:23,452 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:44:23,452 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:44:23,454 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2022-02-20 23:44:23,489 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:44:23,490 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:44:23,491 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:44:23,491 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:44:23,492 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:44:23,492 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:44:23,492 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:44:23,493 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:44:23,493 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:44:23,493 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:44:23,494 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:44:23,494 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:44:23,494 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:44:23,494 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:44:23,495 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:44:23,504 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:44:23,504 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:44:23,505 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:44:23,505 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:44:23,505 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:44:23,505 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:44:23,505 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:44:23,506 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:44:23,506 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:44:23,506 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:44:23,506 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:23,506 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:44:23,507 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:44:23,508 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:44:23,508 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:44:23,508 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 -> 1db117ae3c729419255b5da4a7f4ecd64b2d99a167d11f22266a773c4ff13cdb [2022-02-20 23:44:23,715 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:44:23,733 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:44:23,736 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:44:23,737 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:44:23,738 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:44:23,739 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/memsafety/lockfree-3.3.i [2022-02-20 23:44:23,802 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18470df09/8561cc4606d64e00abe2bd8c790282e8/FLAGd27ee82b6 [2022-02-20 23:44:24,246 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:44:24,247 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/memsafety/lockfree-3.3.i [2022-02-20 23:44:24,259 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18470df09/8561cc4606d64e00abe2bd8c790282e8/FLAGd27ee82b6 [2022-02-20 23:44:24,275 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18470df09/8561cc4606d64e00abe2bd8c790282e8 [2022-02-20 23:44:24,279 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:44:24,280 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:44:24,281 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:24,281 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:44:24,286 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:44:24,287 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,288 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ea81b96 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24, skipping insertion in model container [2022-02-20 23:44:24,288 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,292 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:44:24,323 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:44:24,514 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:24,525 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:44:24,600 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:44:24,634 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:44:24,635 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24 WrapperNode [2022-02-20 23:44:24,635 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:44:24,637 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:24,637 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:44:24,637 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:44:24,643 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,671 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,694 INFO L137 Inliner]: procedures = 125, calls = 18, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 125 [2022-02-20 23:44:24,694 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:44:24,695 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:44:24,695 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:44:24,695 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:44:24,702 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,702 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,705 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,705 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,716 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,719 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,721 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,724 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:44:24,726 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:44:24,727 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:44:24,731 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:44:24,732 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (1/1) ... [2022-02-20 23:44:24,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:44:24,746 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:24,755 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 23:44:24,767 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 23:44:24,786 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:44:24,787 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:44:24,788 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 23:44:24,788 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 23:44:24,789 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 23:44:24,789 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 23:44:24,789 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:44:24,789 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 23:44:24,789 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:44:24,789 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:44:24,897 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:44:24,898 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:44:25,177 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:44:25,183 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:44:25,184 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:44:25,185 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:25 BoogieIcfgContainer [2022-02-20 23:44:25,185 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:44:25,187 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:44:25,187 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:44:25,190 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:44:25,190 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:44:24" (1/3) ... [2022-02-20 23:44:25,191 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@65959900 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:25, skipping insertion in model container [2022-02-20 23:44:25,191 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:44:24" (2/3) ... [2022-02-20 23:44:25,191 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@65959900 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:44:25, skipping insertion in model container [2022-02-20 23:44:25,191 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:44:25" (3/3) ... [2022-02-20 23:44:25,192 INFO L111 eAbstractionObserver]: Analyzing ICFG lockfree-3.3.i [2022-02-20 23:44:25,196 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:44:25,197 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 20 error locations. [2022-02-20 23:44:25,231 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:44:25,237 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 23:44:25,238 INFO L340 AbstractCegarLoop]: Starting to check reachability of 20 error locations. [2022-02-20 23:44:25,262 INFO L276 IsEmpty]: Start isEmpty. Operand has 64 states, 43 states have (on average 1.930232558139535) internal successors, (83), 63 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,266 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-02-20 23:44:25,267 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:25,267 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-02-20 23:44:25,268 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr14REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:25,272 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:25,272 INFO L85 PathProgramCache]: Analyzing trace with hash 28819106, now seen corresponding path program 1 times [2022-02-20 23:44:25,282 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:25,282 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2109908022] [2022-02-20 23:44:25,282 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:25,284 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:25,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:25,403 INFO L290 TraceCheckUtils]: 0: Hoare triple {67#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {67#true} is VALID [2022-02-20 23:44:25,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {67#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {67#true} is VALID [2022-02-20 23:44:25,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {67#true} assume !true; {68#false} is VALID [2022-02-20 23:44:25,410 INFO L290 TraceCheckUtils]: 3: Hoare triple {68#false} assume !!(~garbage~0.base != 0 || ~garbage~0.offset != 0); {68#false} is VALID [2022-02-20 23:44:25,410 INFO L290 TraceCheckUtils]: 4: Hoare triple {68#false} assume !(1 == #valid[~garbage~0.base]); {68#false} is VALID [2022-02-20 23:44:25,411 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:25,412 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:25,412 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2109908022] [2022-02-20 23:44:25,413 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2109908022] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:25,413 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:25,413 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:25,415 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962957277] [2022-02-20 23:44:25,416 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:25,420 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:25,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:25,423 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 5 edges. 5 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:25,433 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 23:44:25,433 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:25,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 23:44:25,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:25,457 INFO L87 Difference]: Start difference. First operand has 64 states, 43 states have (on average 1.930232558139535) internal successors, (83), 63 states have internal predecessors, (83), 0 states have call successors, (0), 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 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:25,541 INFO L93 Difference]: Finished difference Result 64 states and 81 transitions. [2022-02-20 23:44:25,541 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 23:44:25,541 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 5 [2022-02-20 23:44:25,542 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:25,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 83 transitions. [2022-02-20 23:44:25,549 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 83 transitions. [2022-02-20 23:44:25,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 83 transitions. [2022-02-20 23:44:25,640 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:25,655 INFO L225 Difference]: With dead ends: 64 [2022-02-20 23:44:25,656 INFO L226 Difference]: Without dead ends: 62 [2022-02-20 23:44:25,657 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 23:44:25,669 INFO L933 BasicCegarLoop]: 81 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:25,670 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:25,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2022-02-20 23:44:25,697 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 62. [2022-02-20 23:44:25,698 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:25,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 62 states. Second operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,702 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,703 INFO L87 Difference]: Start difference. First operand 62 states. Second operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:25,714 INFO L93 Difference]: Finished difference Result 62 states and 79 transitions. [2022-02-20 23:44:25,714 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 79 transitions. [2022-02-20 23:44:25,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:25,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:25,716 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 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 62 states. [2022-02-20 23:44:25,718 INFO L87 Difference]: Start difference. First operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 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 62 states. [2022-02-20 23:44:25,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:25,724 INFO L93 Difference]: Finished difference Result 62 states and 79 transitions. [2022-02-20 23:44:25,724 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 79 transitions. [2022-02-20 23:44:25,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:25,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:25,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:25,726 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:25,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 42 states have (on average 1.880952380952381) internal successors, (79), 61 states have internal predecessors, (79), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 79 transitions. [2022-02-20 23:44:25,732 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 79 transitions. Word has length 5 [2022-02-20 23:44:25,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:25,733 INFO L470 AbstractCegarLoop]: Abstraction has 62 states and 79 transitions. [2022-02-20 23:44:25,733 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 2.5) internal successors, (5), 2 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:25,733 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 79 transitions. [2022-02-20 23:44:25,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:25,734 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:25,734 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:25,734 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:44:25,735 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr14REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:25,747 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:25,747 INFO L85 PathProgramCache]: Analyzing trace with hash 1806851052, now seen corresponding path program 1 times [2022-02-20 23:44:25,747 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:25,748 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1899535410] [2022-02-20 23:44:25,748 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:25,749 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:25,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:25,780 INFO L290 TraceCheckUtils]: 0: Hoare triple {321#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {321#true} is VALID [2022-02-20 23:44:25,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {321#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {321#true} is VALID [2022-02-20 23:44:25,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {321#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {321#true} is VALID [2022-02-20 23:44:25,784 INFO L290 TraceCheckUtils]: 3: Hoare triple {321#true} assume main_#t~short11#1; {323#|ULTIMATE.start_main_#t~short11#1|} is VALID [2022-02-20 23:44:25,785 INFO L290 TraceCheckUtils]: 4: Hoare triple {323#|ULTIMATE.start_main_#t~short11#1|} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {322#false} is VALID [2022-02-20 23:44:25,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {322#false} assume !!(~garbage~0.base != 0 || ~garbage~0.offset != 0); {322#false} is VALID [2022-02-20 23:44:25,785 INFO L290 TraceCheckUtils]: 6: Hoare triple {322#false} assume !(1 == #valid[~garbage~0.base]); {322#false} is VALID [2022-02-20 23:44:25,786 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:25,786 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:25,787 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1899535410] [2022-02-20 23:44:25,787 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1899535410] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:25,790 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:25,790 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:25,791 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1925161109] [2022-02-20 23:44:25,791 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:25,792 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:25,793 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,804 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:25,804 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:25,804 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:25,805 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:25,805 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:25,806 INFO L87 Difference]: Start difference. First operand 62 states and 79 transitions. Second operand has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:25,898 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-02-20 23:44:25,899 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:25,899 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,899 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:25,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:44:25,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) 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:44:25,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 81 transitions. [2022-02-20 23:44:25,904 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 81 transitions. [2022-02-20 23:44:26,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,029 INFO L225 Difference]: With dead ends: 63 [2022-02-20 23:44:26,029 INFO L226 Difference]: Without dead ends: 63 [2022-02-20 23:44:26,030 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:26,035 INFO L933 BasicCegarLoop]: 78 mSDtfsCounter, 0 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 6 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:26,036 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 151 Invalid, 6 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:26,038 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-02-20 23:44:26,042 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 63. [2022-02-20 23:44:26,044 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:26,044 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,045 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,046 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,050 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-02-20 23:44:26,050 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-02-20 23:44:26,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,052 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 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 63 states. [2022-02-20 23:44:26,052 INFO L87 Difference]: Start difference. First operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 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 63 states. [2022-02-20 23:44:26,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,057 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-02-20 23:44:26,057 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-02-20 23:44:26,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,062 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:26,062 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:26,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 43 states have (on average 1.8604651162790697) internal successors, (80), 62 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 80 transitions. [2022-02-20 23:44:26,064 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 80 transitions. Word has length 7 [2022-02-20 23:44:26,065 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:26,065 INFO L470 AbstractCegarLoop]: Abstraction has 63 states and 80 transitions. [2022-02-20 23:44:26,065 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.3333333333333335) 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:44:26,065 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-02-20 23:44:26,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:44:26,066 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:26,066 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:26,067 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:44:26,067 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr14REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:26,068 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:26,068 INFO L85 PathProgramCache]: Analyzing trace with hash 1806910634, now seen corresponding path program 1 times [2022-02-20 23:44:26,068 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:26,068 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [396899705] [2022-02-20 23:44:26,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:26,070 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:26,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:26,141 INFO L290 TraceCheckUtils]: 0: Hoare triple {578#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} is VALID [2022-02-20 23:44:26,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} is VALID [2022-02-20 23:44:26,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} is VALID [2022-02-20 23:44:26,143 INFO L290 TraceCheckUtils]: 3: Hoare triple {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} is VALID [2022-02-20 23:44:26,144 INFO L290 TraceCheckUtils]: 4: Hoare triple {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} is VALID [2022-02-20 23:44:26,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {580#(and (= ~garbage~0.offset 0) (= 0 ~garbage~0.base))} assume !!(~garbage~0.base != 0 || ~garbage~0.offset != 0); {579#false} is VALID [2022-02-20 23:44:26,145 INFO L290 TraceCheckUtils]: 6: Hoare triple {579#false} assume !(1 == #valid[~garbage~0.base]); {579#false} is VALID [2022-02-20 23:44:26,145 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:26,145 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:26,145 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [396899705] [2022-02-20 23:44:26,146 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [396899705] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:26,146 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:26,146 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:26,146 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [62853823] [2022-02-20 23:44:26,146 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:26,147 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:26,147 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,154 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:26,154 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:26,155 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:26,155 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:26,155 INFO L87 Difference]: Start difference. First operand 63 states and 80 transitions. Second operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,293 INFO L93 Difference]: Finished difference Result 111 states and 145 transitions. [2022-02-20 23:44:26,293 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:26,293 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:26,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:44:26,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 144 transitions. [2022-02-20 23:44:26,297 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 144 transitions. [2022-02-20 23:44:26,418 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:44:26,421 INFO L225 Difference]: With dead ends: 111 [2022-02-20 23:44:26,421 INFO L226 Difference]: Without dead ends: 111 [2022-02-20 23:44:26,421 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:44:26,422 INFO L933 BasicCegarLoop]: 76 mSDtfsCounter, 62 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:26,423 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [62 Valid, 138 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:26,423 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2022-02-20 23:44:26,429 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 93. [2022-02-20 23:44:26,429 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:26,429 INFO L82 GeneralOperation]: Start isEquivalent. First operand 111 states. Second operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,430 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,430 INFO L87 Difference]: Start difference. First operand 111 states. Second operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,433 INFO L93 Difference]: Finished difference Result 111 states and 145 transitions. [2022-02-20 23:44:26,433 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 145 transitions. [2022-02-20 23:44:26,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,438 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 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 111 states. [2022-02-20 23:44:26,438 INFO L87 Difference]: Start difference. First operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 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 111 states. [2022-02-20 23:44:26,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,442 INFO L93 Difference]: Finished difference Result 111 states and 145 transitions. [2022-02-20 23:44:26,442 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 145 transitions. [2022-02-20 23:44:26,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,443 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:26,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:26,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 73 states have (on average 1.8767123287671232) internal successors, (137), 92 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 137 transitions. [2022-02-20 23:44:26,448 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 137 transitions. Word has length 7 [2022-02-20 23:44:26,448 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:26,448 INFO L470 AbstractCegarLoop]: Abstraction has 93 states and 137 transitions. [2022-02-20 23:44:26,449 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 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:44:26,449 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 137 transitions. [2022-02-20 23:44:26,449 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:26,449 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:26,449 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:26,449 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:44:26,450 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:26,450 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:26,450 INFO L85 PathProgramCache]: Analyzing trace with hash 177749355, now seen corresponding path program 1 times [2022-02-20 23:44:26,451 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:26,451 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [693877495] [2022-02-20 23:44:26,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:26,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:26,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:26,494 INFO L290 TraceCheckUtils]: 0: Hoare triple {1009#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {1011#(and (= ~pc1~0 1) (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:26,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {1011#(and (= ~pc1~0 1) (= ~S~0.base 0) (= ~S~0.offset 0))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {1011#(and (= ~pc1~0 1) (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:26,495 INFO L290 TraceCheckUtils]: 2: Hoare triple {1011#(and (= ~pc1~0 1) (= ~S~0.base 0) (= ~S~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {1012#(not |ULTIMATE.start_main_#t~short11#1|)} is VALID [2022-02-20 23:44:26,495 INFO L290 TraceCheckUtils]: 3: Hoare triple {1012#(not |ULTIMATE.start_main_#t~short11#1|)} assume main_#t~short11#1; {1010#false} is VALID [2022-02-20 23:44:26,496 INFO L290 TraceCheckUtils]: 4: Hoare triple {1010#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {1010#false} is VALID [2022-02-20 23:44:26,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {1010#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {1010#false} is VALID [2022-02-20 23:44:26,496 INFO L290 TraceCheckUtils]: 6: Hoare triple {1010#false} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {1010#false} is VALID [2022-02-20 23:44:26,496 INFO L290 TraceCheckUtils]: 7: Hoare triple {1010#false} assume !(1 == #valid[~x1~0.base]); {1010#false} is VALID [2022-02-20 23:44:26,497 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:26,497 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:26,497 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [693877495] [2022-02-20 23:44:26,497 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [693877495] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:26,497 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:26,498 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:26,498 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1011082726] [2022-02-20 23:44:26,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:26,498 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:26,498 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:26,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,505 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:26,505 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:26,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:26,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:26,506 INFO L87 Difference]: Start difference. First operand 93 states and 137 transitions. Second operand has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,689 INFO L93 Difference]: Finished difference Result 148 states and 212 transitions. [2022-02-20 23:44:26,689 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:44:26,689 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:26,689 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:26,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 128 transitions. [2022-02-20 23:44:26,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 128 transitions. [2022-02-20 23:44:26,693 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 128 transitions. [2022-02-20 23:44:26,794 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,797 INFO L225 Difference]: With dead ends: 148 [2022-02-20 23:44:26,797 INFO L226 Difference]: Without dead ends: 148 [2022-02-20 23:44:26,797 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:26,798 INFO L933 BasicCegarLoop]: 73 mSDtfsCounter, 44 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 26 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 26 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:26,798 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 209 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:26,799 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-02-20 23:44:26,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 127. [2022-02-20 23:44:26,805 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:26,805 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,806 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,806 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,821 INFO L93 Difference]: Finished difference Result 148 states and 212 transitions. [2022-02-20 23:44:26,821 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 212 transitions. [2022-02-20 23:44:26,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,822 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 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:44:26,823 INFO L87 Difference]: Start difference. First operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 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:44:26,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:26,827 INFO L93 Difference]: Finished difference Result 148 states and 212 transitions. [2022-02-20 23:44:26,827 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 212 transitions. [2022-02-20 23:44:26,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:26,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:26,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:26,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:26,828 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 107 states have (on average 1.841121495327103) internal successors, (197), 126 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 197 transitions. [2022-02-20 23:44:26,832 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 197 transitions. Word has length 8 [2022-02-20 23:44:26,832 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:26,832 INFO L470 AbstractCegarLoop]: Abstraction has 127 states and 197 transitions. [2022-02-20 23:44:26,833 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,833 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 197 transitions. [2022-02-20 23:44:26,833 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:26,833 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:26,833 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:26,833 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:44:26,834 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:26,834 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:26,834 INFO L85 PathProgramCache]: Analyzing trace with hash 179653412, now seen corresponding path program 1 times [2022-02-20 23:44:26,835 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:26,835 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1271697568] [2022-02-20 23:44:26,835 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:26,835 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:26,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:26,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {1588#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {1588#true} is VALID [2022-02-20 23:44:26,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {1588#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,867 INFO L290 TraceCheckUtils]: 3: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,867 INFO L290 TraceCheckUtils]: 4: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,868 INFO L290 TraceCheckUtils]: 6: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:44:26,869 INFO L290 TraceCheckUtils]: 7: Hoare triple {1590#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {1589#false} is VALID [2022-02-20 23:44:26,869 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:26,869 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:26,869 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1271697568] [2022-02-20 23:44:26,869 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1271697568] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:26,869 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:26,870 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:26,870 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [458318022] [2022-02-20 23:44:26,870 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:26,870 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:26,871 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:26,871 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:26,877 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:26,877 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:26,877 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:26,878 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:26,878 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:26,878 INFO L87 Difference]: Start difference. First operand 127 states and 197 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,007 INFO L93 Difference]: Finished difference Result 209 states and 319 transitions. [2022-02-20 23:44:27,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:27,007 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:27,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:27,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 150 transitions. [2022-02-20 23:44:27,011 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 150 transitions. [2022-02-20 23:44:27,015 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 150 transitions. [2022-02-20 23:44:27,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:27,138 INFO L225 Difference]: With dead ends: 209 [2022-02-20 23:44:27,138 INFO L226 Difference]: Without dead ends: 206 [2022-02-20 23:44:27,138 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:44:27,140 INFO L933 BasicCegarLoop]: 64 mSDtfsCounter, 63 mSDsluCounter, 57 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:27,141 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 121 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:27,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-02-20 23:44:27,149 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 185. [2022-02-20 23:44:27,149 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:27,150 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,150 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,151 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,160 INFO L93 Difference]: Finished difference Result 206 states and 314 transitions. [2022-02-20 23:44:27,160 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 314 transitions. [2022-02-20 23:44:27,160 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,160 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,161 INFO L74 IsIncluded]: Start isIncluded. First operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 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 206 states. [2022-02-20 23:44:27,161 INFO L87 Difference]: Start difference. First operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 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 206 states. [2022-02-20 23:44:27,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,171 INFO L93 Difference]: Finished difference Result 206 states and 314 transitions. [2022-02-20 23:44:27,172 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 314 transitions. [2022-02-20 23:44:27,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,172 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:27,172 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:27,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 185 states, 165 states have (on average 1.8363636363636364) internal successors, (303), 184 states have internal predecessors, (303), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 303 transitions. [2022-02-20 23:44:27,181 INFO L78 Accepts]: Start accepts. Automaton has 185 states and 303 transitions. Word has length 8 [2022-02-20 23:44:27,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:27,181 INFO L470 AbstractCegarLoop]: Abstraction has 185 states and 303 transitions. [2022-02-20 23:44:27,182 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,182 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 303 transitions. [2022-02-20 23:44:27,182 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:27,182 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:27,182 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:27,183 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:44:27,183 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:27,183 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:27,183 INFO L85 PathProgramCache]: Analyzing trace with hash 179596397, now seen corresponding path program 1 times [2022-02-20 23:44:27,184 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:27,184 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1106794726] [2022-02-20 23:44:27,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:27,184 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:27,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:27,217 INFO L290 TraceCheckUtils]: 0: Hoare triple {2399#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {2399#true} is VALID [2022-02-20 23:44:27,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {2399#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {2399#true} is VALID [2022-02-20 23:44:27,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {2399#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {2399#true} is VALID [2022-02-20 23:44:27,217 INFO L290 TraceCheckUtils]: 3: Hoare triple {2399#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {2399#true} is VALID [2022-02-20 23:44:27,218 INFO L290 TraceCheckUtils]: 4: Hoare triple {2399#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {2399#true} is VALID [2022-02-20 23:44:27,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {2399#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {2399#true} is VALID [2022-02-20 23:44:27,219 INFO L290 TraceCheckUtils]: 6: Hoare triple {2399#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {2401#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:27,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {2401#(= (select |#valid| ~x1~0.base) 1)} assume !(1 == #valid[~x1~0.base]); {2400#false} is VALID [2022-02-20 23:44:27,219 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:27,219 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:27,220 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1106794726] [2022-02-20 23:44:27,220 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1106794726] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:27,220 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:27,220 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:27,220 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1316304492] [2022-02-20 23:44:27,220 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:27,221 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:27,221 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:27,221 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,228 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:27,228 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:27,228 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:27,229 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:27,229 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:27,229 INFO L87 Difference]: Start difference. First operand 185 states and 303 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,388 INFO L93 Difference]: Finished difference Result 261 states and 411 transitions. [2022-02-20 23:44:27,388 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:27,388 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:27,389 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:27,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:44:27,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2022-02-20 23:44:27,392 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 149 transitions. [2022-02-20 23:44:27,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:27,507 INFO L225 Difference]: With dead ends: 261 [2022-02-20 23:44:27,507 INFO L226 Difference]: Without dead ends: 261 [2022-02-20 23:44:27,508 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:44:27,508 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 67 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:27,509 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 171 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:27,509 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 261 states. [2022-02-20 23:44:27,521 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 261 to 240. [2022-02-20 23:44:27,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:27,522 INFO L82 GeneralOperation]: Start isEquivalent. First operand 261 states. Second operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,523 INFO L74 IsIncluded]: Start isIncluded. First operand 261 states. Second operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,524 INFO L87 Difference]: Start difference. First operand 261 states. Second operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,532 INFO L93 Difference]: Finished difference Result 261 states and 411 transitions. [2022-02-20 23:44:27,532 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 411 transitions. [2022-02-20 23:44:27,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,533 INFO L74 IsIncluded]: Start isIncluded. First operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 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 261 states. [2022-02-20 23:44:27,534 INFO L87 Difference]: Start difference. First operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 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 261 states. [2022-02-20 23:44:27,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,542 INFO L93 Difference]: Finished difference Result 261 states and 411 transitions. [2022-02-20 23:44:27,542 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 411 transitions. [2022-02-20 23:44:27,543 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,543 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,543 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:27,543 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:27,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 240 states, 222 states have (on average 1.7882882882882882) internal successors, (397), 239 states have internal predecessors, (397), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 240 states to 240 states and 397 transitions. [2022-02-20 23:44:27,551 INFO L78 Accepts]: Start accepts. Automaton has 240 states and 397 transitions. Word has length 8 [2022-02-20 23:44:27,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:27,551 INFO L470 AbstractCegarLoop]: Abstraction has 240 states and 397 transitions. [2022-02-20 23:44:27,551 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,552 INFO L276 IsEmpty]: Start isEmpty. Operand 240 states and 397 transitions. [2022-02-20 23:44:27,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:44:27,552 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:27,552 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:27,552 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:44:27,553 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:27,553 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:27,553 INFO L85 PathProgramCache]: Analyzing trace with hash 179596398, now seen corresponding path program 1 times [2022-02-20 23:44:27,553 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:27,554 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1558847625] [2022-02-20 23:44:27,554 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:27,554 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:27,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:27,594 INFO L290 TraceCheckUtils]: 0: Hoare triple {3427#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {3427#true} is VALID [2022-02-20 23:44:27,594 INFO L290 TraceCheckUtils]: 1: Hoare triple {3427#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {3427#true} is VALID [2022-02-20 23:44:27,594 INFO L290 TraceCheckUtils]: 2: Hoare triple {3427#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {3427#true} is VALID [2022-02-20 23:44:27,595 INFO L290 TraceCheckUtils]: 3: Hoare triple {3427#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {3427#true} is VALID [2022-02-20 23:44:27,595 INFO L290 TraceCheckUtils]: 4: Hoare triple {3427#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {3427#true} is VALID [2022-02-20 23:44:27,595 INFO L290 TraceCheckUtils]: 5: Hoare triple {3427#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {3427#true} is VALID [2022-02-20 23:44:27,596 INFO L290 TraceCheckUtils]: 6: Hoare triple {3427#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {3429#(and (= ~x1~0.offset 0) (<= 8 (select |#length| ~x1~0.base)))} is VALID [2022-02-20 23:44:27,597 INFO L290 TraceCheckUtils]: 7: Hoare triple {3429#(and (= ~x1~0.offset 0) (<= 8 (select |#length| ~x1~0.base)))} assume !(4 + ~x1~0.offset <= #length[~x1~0.base] && 0 <= ~x1~0.offset); {3428#false} is VALID [2022-02-20 23:44:27,597 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:27,597 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:27,597 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1558847625] [2022-02-20 23:44:27,597 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1558847625] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:27,597 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:27,598 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:44:27,598 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1047984379] [2022-02-20 23:44:27,598 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:27,598 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:27,599 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:27,599 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:27,605 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:44:27,605 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:27,606 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:44:27,606 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:44:27,606 INFO L87 Difference]: Start difference. First operand 240 states and 397 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,763 INFO L93 Difference]: Finished difference Result 256 states and 402 transitions. [2022-02-20 23:44:27,763 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:44:27,763 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 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 8 [2022-02-20 23:44:27,763 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:27,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 145 transitions. [2022-02-20 23:44:27,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 145 transitions. [2022-02-20 23:44:27,767 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 145 transitions. [2022-02-20 23:44:27,881 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:44:27,885 INFO L225 Difference]: With dead ends: 256 [2022-02-20 23:44:27,886 INFO L226 Difference]: Without dead ends: 256 [2022-02-20 23:44:27,886 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:44:27,887 INFO L933 BasicCegarLoop]: 124 mSDtfsCounter, 66 mSDsluCounter, 55 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 179 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:27,887 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [66 Valid, 179 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:27,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 256 states. [2022-02-20 23:44:27,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 256 to 238. [2022-02-20 23:44:27,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:27,892 INFO L82 GeneralOperation]: Start isEquivalent. First operand 256 states. Second operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,892 INFO L74 IsIncluded]: Start isIncluded. First operand 256 states. Second operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,893 INFO L87 Difference]: Start difference. First operand 256 states. Second operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,899 INFO L93 Difference]: Finished difference Result 256 states and 402 transitions. [2022-02-20 23:44:27,900 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 402 transitions. [2022-02-20 23:44:27,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,901 INFO L74 IsIncluded]: Start isIncluded. First operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 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 256 states. [2022-02-20 23:44:27,901 INFO L87 Difference]: Start difference. First operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 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 256 states. [2022-02-20 23:44:27,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:27,907 INFO L93 Difference]: Finished difference Result 256 states and 402 transitions. [2022-02-20 23:44:27,907 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 402 transitions. [2022-02-20 23:44:27,907 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:27,907 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:27,908 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:27,908 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:27,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 238 states, 222 states have (on average 1.7522522522522523) internal successors, (389), 237 states have internal predecessors, (389), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 238 states to 238 states and 389 transitions. [2022-02-20 23:44:27,913 INFO L78 Accepts]: Start accepts. Automaton has 238 states and 389 transitions. Word has length 8 [2022-02-20 23:44:27,913 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:27,913 INFO L470 AbstractCegarLoop]: Abstraction has 238 states and 389 transitions. [2022-02-20 23:44:27,914 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,914 INFO L276 IsEmpty]: Start isEmpty. Operand 238 states and 389 transitions. [2022-02-20 23:44:27,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:44:27,914 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:27,914 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:27,914 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:44:27,915 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:27,915 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:27,915 INFO L85 PathProgramCache]: Analyzing trace with hash 1272529015, now seen corresponding path program 1 times [2022-02-20 23:44:27,915 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:27,915 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1260030117] [2022-02-20 23:44:27,916 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:27,916 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:27,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:27,943 INFO L290 TraceCheckUtils]: 0: Hoare triple {4438#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {4440#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:27,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {4440#(= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {4440#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:27,944 INFO L290 TraceCheckUtils]: 2: Hoare triple {4440#(= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {4440#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:27,944 INFO L290 TraceCheckUtils]: 3: Hoare triple {4440#(= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {4440#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:27,945 INFO L290 TraceCheckUtils]: 4: Hoare triple {4440#(= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {4440#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:27,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {4440#(= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {4441#|ULTIMATE.start_push_#t~switch4#1|} is VALID [2022-02-20 23:44:27,946 INFO L290 TraceCheckUtils]: 6: Hoare triple {4441#|ULTIMATE.start_push_#t~switch4#1|} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {4439#false} is VALID [2022-02-20 23:44:27,946 INFO L290 TraceCheckUtils]: 7: Hoare triple {4439#false} assume push_#t~switch4#1; {4439#false} is VALID [2022-02-20 23:44:27,946 INFO L290 TraceCheckUtils]: 8: Hoare triple {4439#false} assume !(1 == #valid[~x1~0.base]); {4439#false} is VALID [2022-02-20 23:44:27,946 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:27,946 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:27,947 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1260030117] [2022-02-20 23:44:27,947 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1260030117] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:27,947 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:27,947 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:27,947 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1970238048] [2022-02-20 23:44:27,947 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:27,948 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:44:27,948 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:27,948 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:27,955 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:27,955 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:27,955 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:27,956 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:27,956 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:27,956 INFO L87 Difference]: Start difference. First operand 238 states and 389 transitions. Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,141 INFO L93 Difference]: Finished difference Result 297 states and 423 transitions. [2022-02-20 23:44:28,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:28,141 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:44:28,141 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:28,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 222 transitions. [2022-02-20 23:44:28,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 222 transitions. [2022-02-20 23:44:28,145 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 222 transitions. [2022-02-20 23:44:28,331 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 222 edges. 222 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:28,335 INFO L225 Difference]: With dead ends: 297 [2022-02-20 23:44:28,335 INFO L226 Difference]: Without dead ends: 297 [2022-02-20 23:44:28,336 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:28,336 INFO L933 BasicCegarLoop]: 162 mSDtfsCounter, 105 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 105 SdHoareTripleChecker+Valid, 279 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:28,336 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [105 Valid, 279 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:28,337 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 297 states. [2022-02-20 23:44:28,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 297 to 195. [2022-02-20 23:44:28,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:28,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 297 states. Second operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,340 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,341 INFO L87 Difference]: Start difference. First operand 297 states. Second operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,347 INFO L93 Difference]: Finished difference Result 297 states and 423 transitions. [2022-02-20 23:44:28,347 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 423 transitions. [2022-02-20 23:44:28,347 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:28,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:28,348 INFO L74 IsIncluded]: Start isIncluded. First operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 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 297 states. [2022-02-20 23:44:28,348 INFO L87 Difference]: Start difference. First operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 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 297 states. [2022-02-20 23:44:28,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,354 INFO L93 Difference]: Finished difference Result 297 states and 423 transitions. [2022-02-20 23:44:28,355 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 423 transitions. [2022-02-20 23:44:28,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:28,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:28,355 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:28,355 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:28,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 195 states, 183 states have (on average 1.6994535519125684) internal successors, (311), 194 states have internal predecessors, (311), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 195 states to 195 states and 311 transitions. [2022-02-20 23:44:28,359 INFO L78 Accepts]: Start accepts. Automaton has 195 states and 311 transitions. Word has length 9 [2022-02-20 23:44:28,360 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:28,360 INFO L470 AbstractCegarLoop]: Abstraction has 195 states and 311 transitions. [2022-02-20 23:44:28,360 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.25) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,360 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 311 transitions. [2022-02-20 23:44:28,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:44:28,360 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:28,360 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:28,361 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:44:28,361 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:28,361 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:28,361 INFO L85 PathProgramCache]: Analyzing trace with hash 845049582, now seen corresponding path program 1 times [2022-02-20 23:44:28,361 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:28,362 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [122475257] [2022-02-20 23:44:28,362 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:28,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:28,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:28,387 INFO L290 TraceCheckUtils]: 0: Hoare triple {5532#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {5534#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:28,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {5534#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {5534#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:28,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {5534#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {5534#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:28,388 INFO L290 TraceCheckUtils]: 3: Hoare triple {5534#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {5534#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:28,389 INFO L290 TraceCheckUtils]: 4: Hoare triple {5534#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {5534#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:28,390 INFO L290 TraceCheckUtils]: 5: Hoare triple {5534#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {5535#|ULTIMATE.start_pop_#t~switch7#1|} is VALID [2022-02-20 23:44:28,390 INFO L290 TraceCheckUtils]: 6: Hoare triple {5535#|ULTIMATE.start_pop_#t~switch7#1|} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {5533#false} is VALID [2022-02-20 23:44:28,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {5533#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {5533#false} is VALID [2022-02-20 23:44:28,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {5533#false} assume pop_#t~switch7#1; {5533#false} is VALID [2022-02-20 23:44:28,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {5533#false} assume !(1 == #valid[~t4~0.base]); {5533#false} is VALID [2022-02-20 23:44:28,391 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:28,391 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:28,391 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [122475257] [2022-02-20 23:44:28,391 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [122475257] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:44:28,391 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:44:28,392 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:44:28,392 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [225714569] [2022-02-20 23:44:28,392 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:28,393 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:44:28,393 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:28,393 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:28,401 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:28,401 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:28,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:28,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:28,401 INFO L87 Difference]: Start difference. First operand 195 states and 311 transitions. Second operand has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,564 INFO L93 Difference]: Finished difference Result 418 states and 615 transitions. [2022-02-20 23:44:28,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:44:28,564 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:44:28,565 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:28,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 187 transitions. [2022-02-20 23:44:28,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 187 transitions. [2022-02-20 23:44:28,567 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 187 transitions. [2022-02-20 23:44:28,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 187 edges. 187 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:28,718 INFO L225 Difference]: With dead ends: 418 [2022-02-20 23:44:28,718 INFO L226 Difference]: Without dead ends: 418 [2022-02-20 23:44:28,718 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:28,719 INFO L933 BasicCegarLoop]: 129 mSDtfsCounter, 107 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 107 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:28,719 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [107 Valid, 236 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:28,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 418 states. [2022-02-20 23:44:28,724 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 418 to 278. [2022-02-20 23:44:28,724 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:28,725 INFO L82 GeneralOperation]: Start isEquivalent. First operand 418 states. Second operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,725 INFO L74 IsIncluded]: Start isIncluded. First operand 418 states. Second operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,726 INFO L87 Difference]: Start difference. First operand 418 states. Second operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,735 INFO L93 Difference]: Finished difference Result 418 states and 615 transitions. [2022-02-20 23:44:28,735 INFO L276 IsEmpty]: Start isEmpty. Operand 418 states and 615 transitions. [2022-02-20 23:44:28,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:28,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:28,737 INFO L74 IsIncluded]: Start isIncluded. First operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 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 418 states. [2022-02-20 23:44:28,737 INFO L87 Difference]: Start difference. First operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 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 418 states. [2022-02-20 23:44:28,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:28,747 INFO L93 Difference]: Finished difference Result 418 states and 615 transitions. [2022-02-20 23:44:28,747 INFO L276 IsEmpty]: Start isEmpty. Operand 418 states and 615 transitions. [2022-02-20 23:44:28,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:28,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:28,748 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:28,748 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:28,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 278 states, 266 states have (on average 1.6090225563909775) internal successors, (428), 277 states have internal predecessors, (428), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 278 states to 278 states and 428 transitions. [2022-02-20 23:44:28,754 INFO L78 Accepts]: Start accepts. Automaton has 278 states and 428 transitions. Word has length 10 [2022-02-20 23:44:28,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:28,754 INFO L470 AbstractCegarLoop]: Abstraction has 278 states and 428 transitions. [2022-02-20 23:44:28,754 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.5) internal successors, (10), 3 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:28,755 INFO L276 IsEmpty]: Start isEmpty. Operand 278 states and 428 transitions. [2022-02-20 23:44:28,755 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:28,755 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:28,755 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:28,755 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:44:28,756 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:28,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:28,756 INFO L85 PathProgramCache]: Analyzing trace with hash 22246394, now seen corresponding path program 1 times [2022-02-20 23:44:28,756 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:28,756 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [21386622] [2022-02-20 23:44:28,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:28,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:28,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:28,842 INFO L290 TraceCheckUtils]: 0: Hoare triple {7072#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {7074#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:28,842 INFO L290 TraceCheckUtils]: 1: Hoare triple {7074#(= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {7074#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:28,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {7074#(= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7074#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:28,843 INFO L290 TraceCheckUtils]: 3: Hoare triple {7074#(= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7074#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:28,843 INFO L290 TraceCheckUtils]: 4: Hoare triple {7074#(= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {7074#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:28,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {7074#(= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:28,844 INFO L290 TraceCheckUtils]: 6: Hoare triple {7075#(<= 2 ~pc1~0)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:28,845 INFO L290 TraceCheckUtils]: 7: Hoare triple {7075#(<= 2 ~pc1~0)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:28,845 INFO L290 TraceCheckUtils]: 8: Hoare triple {7075#(<= 2 ~pc1~0)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:28,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {7075#(<= 2 ~pc1~0)} assume { :end_inline_push } true; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:28,846 INFO L290 TraceCheckUtils]: 10: Hoare triple {7075#(<= 2 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7076#|ULTIMATE.start_main_#t~short11#1|} is VALID [2022-02-20 23:44:28,847 INFO L290 TraceCheckUtils]: 11: Hoare triple {7076#|ULTIMATE.start_main_#t~short11#1|} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7073#false} is VALID [2022-02-20 23:44:28,847 INFO L290 TraceCheckUtils]: 12: Hoare triple {7073#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {7073#false} is VALID [2022-02-20 23:44:28,847 INFO L290 TraceCheckUtils]: 13: Hoare triple {7073#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {7073#false} is VALID [2022-02-20 23:44:28,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {7073#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {7073#false} is VALID [2022-02-20 23:44:28,848 INFO L290 TraceCheckUtils]: 15: Hoare triple {7073#false} assume !(#valid == main_old_#valid#1); {7073#false} is VALID [2022-02-20 23:44:28,848 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:44:28,848 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:28,848 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [21386622] [2022-02-20 23:44:28,848 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [21386622] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:28,849 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [581794715] [2022-02-20 23:44:28,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:28,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:28,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:28,851 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:44:28,860 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:44:28,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:28,928 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 23:44:28,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:28,958 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:29,121 INFO L290 TraceCheckUtils]: 0: Hoare triple {7072#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,121 INFO L290 TraceCheckUtils]: 1: Hoare triple {7080#(<= 1 ~pc1~0)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,122 INFO L290 TraceCheckUtils]: 2: Hoare triple {7080#(<= 1 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,122 INFO L290 TraceCheckUtils]: 3: Hoare triple {7080#(<= 1 ~pc1~0)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,122 INFO L290 TraceCheckUtils]: 4: Hoare triple {7080#(<= 1 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,123 INFO L290 TraceCheckUtils]: 5: Hoare triple {7080#(<= 1 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:29,123 INFO L290 TraceCheckUtils]: 6: Hoare triple {7075#(<= 2 ~pc1~0)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:29,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {7075#(<= 2 ~pc1~0)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:29,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {7075#(<= 2 ~pc1~0)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:29,125 INFO L290 TraceCheckUtils]: 9: Hoare triple {7075#(<= 2 ~pc1~0)} assume { :end_inline_push } true; {7075#(<= 2 ~pc1~0)} is VALID [2022-02-20 23:44:29,125 INFO L290 TraceCheckUtils]: 10: Hoare triple {7075#(<= 2 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7076#|ULTIMATE.start_main_#t~short11#1|} is VALID [2022-02-20 23:44:29,126 INFO L290 TraceCheckUtils]: 11: Hoare triple {7076#|ULTIMATE.start_main_#t~short11#1|} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7073#false} is VALID [2022-02-20 23:44:29,126 INFO L290 TraceCheckUtils]: 12: Hoare triple {7073#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {7073#false} is VALID [2022-02-20 23:44:29,126 INFO L290 TraceCheckUtils]: 13: Hoare triple {7073#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {7073#false} is VALID [2022-02-20 23:44:29,126 INFO L290 TraceCheckUtils]: 14: Hoare triple {7073#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {7073#false} is VALID [2022-02-20 23:44:29,126 INFO L290 TraceCheckUtils]: 15: Hoare triple {7073#false} assume !(#valid == main_old_#valid#1); {7073#false} is VALID [2022-02-20 23:44:29,127 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:29,127 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:29,216 INFO L290 TraceCheckUtils]: 15: Hoare triple {7073#false} assume !(#valid == main_old_#valid#1); {7073#false} is VALID [2022-02-20 23:44:29,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {7073#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {7073#false} is VALID [2022-02-20 23:44:29,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {7073#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {7073#false} is VALID [2022-02-20 23:44:29,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {7073#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {7073#false} is VALID [2022-02-20 23:44:29,218 INFO L290 TraceCheckUtils]: 11: Hoare triple {7076#|ULTIMATE.start_main_#t~short11#1|} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7073#false} is VALID [2022-02-20 23:44:29,218 INFO L290 TraceCheckUtils]: 10: Hoare triple {7141#(not (= ~pc1~0 1))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7076#|ULTIMATE.start_main_#t~short11#1|} is VALID [2022-02-20 23:44:29,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {7141#(not (= ~pc1~0 1))} assume { :end_inline_push } true; {7141#(not (= ~pc1~0 1))} is VALID [2022-02-20 23:44:29,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {7141#(not (= ~pc1~0 1))} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {7141#(not (= ~pc1~0 1))} is VALID [2022-02-20 23:44:29,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {7141#(not (= ~pc1~0 1))} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {7141#(not (= ~pc1~0 1))} is VALID [2022-02-20 23:44:29,220 INFO L290 TraceCheckUtils]: 6: Hoare triple {7141#(not (= ~pc1~0 1))} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {7141#(not (= ~pc1~0 1))} is VALID [2022-02-20 23:44:29,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {7080#(<= 1 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {7141#(not (= ~pc1~0 1))} is VALID [2022-02-20 23:44:29,221 INFO L290 TraceCheckUtils]: 4: Hoare triple {7080#(<= 1 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,221 INFO L290 TraceCheckUtils]: 3: Hoare triple {7080#(<= 1 ~pc1~0)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,221 INFO L290 TraceCheckUtils]: 2: Hoare triple {7080#(<= 1 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,222 INFO L290 TraceCheckUtils]: 1: Hoare triple {7080#(<= 1 ~pc1~0)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,223 INFO L290 TraceCheckUtils]: 0: Hoare triple {7072#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {7080#(<= 1 ~pc1~0)} is VALID [2022-02-20 23:44:29,223 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:44:29,223 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [581794715] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:29,223 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:29,223 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 6 [2022-02-20 23:44:29,223 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [448054846] [2022-02-20 23:44:29,224 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:29,224 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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 16 [2022-02-20 23:44:29,224 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:29,224 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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:44:29,244 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:44:29,245 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:44:29,245 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:29,245 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:44:29,246 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:44:29,246 INFO L87 Difference]: Start difference. First operand 278 states and 428 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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:44:29,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:29,513 INFO L93 Difference]: Finished difference Result 282 states and 418 transitions. [2022-02-20 23:44:29,513 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:44:29,513 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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 16 [2022-02-20 23:44:29,513 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:29,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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:44:29,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 107 transitions. [2022-02-20 23:44:29,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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:44:29,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 107 transitions. [2022-02-20 23:44:29,515 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 107 transitions. [2022-02-20 23:44:29,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:29,602 INFO L225 Difference]: With dead ends: 282 [2022-02-20 23:44:29,603 INFO L226 Difference]: Without dead ends: 282 [2022-02-20 23:44:29,603 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 28 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=47, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:44:29,605 INFO L933 BasicCegarLoop]: 99 mSDtfsCounter, 186 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 186 SdHoareTripleChecker+Valid, 338 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:29,605 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [186 Valid, 338 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:29,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 282 states. [2022-02-20 23:44:29,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 282 to 274. [2022-02-20 23:44:29,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:29,610 INFO L82 GeneralOperation]: Start isEquivalent. First operand 282 states. Second operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:29,611 INFO L74 IsIncluded]: Start isIncluded. First operand 282 states. Second operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:29,611 INFO L87 Difference]: Start difference. First operand 282 states. Second operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:29,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:29,617 INFO L93 Difference]: Finished difference Result 282 states and 418 transitions. [2022-02-20 23:44:29,617 INFO L276 IsEmpty]: Start isEmpty. Operand 282 states and 418 transitions. [2022-02-20 23:44:29,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:29,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:29,618 INFO L74 IsIncluded]: Start isIncluded. First operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 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 282 states. [2022-02-20 23:44:29,618 INFO L87 Difference]: Start difference. First operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 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 282 states. [2022-02-20 23:44:29,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:29,624 INFO L93 Difference]: Finished difference Result 282 states and 418 transitions. [2022-02-20 23:44:29,624 INFO L276 IsEmpty]: Start isEmpty. Operand 282 states and 418 transitions. [2022-02-20 23:44:29,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:29,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:29,625 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:29,625 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:29,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 274 states, 262 states have (on average 1.5877862595419847) internal successors, (416), 273 states have internal predecessors, (416), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:29,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 274 states to 274 states and 416 transitions. [2022-02-20 23:44:29,631 INFO L78 Accepts]: Start accepts. Automaton has 274 states and 416 transitions. Word has length 16 [2022-02-20 23:44:29,631 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:29,631 INFO L470 AbstractCegarLoop]: Abstraction has 274 states and 416 transitions. [2022-02-20 23:44:29,631 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 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:44:29,631 INFO L276 IsEmpty]: Start isEmpty. Operand 274 states and 416 transitions. [2022-02-20 23:44:29,632 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:44:29,632 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:29,632 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:29,659 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:29,853 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,SelfDestructingSolverStorable9 [2022-02-20 23:44:29,853 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:29,854 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:29,854 INFO L85 PathProgramCache]: Analyzing trace with hash -1902356162, now seen corresponding path program 1 times [2022-02-20 23:44:29,854 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:29,854 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1522535359] [2022-02-20 23:44:29,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:29,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:29,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:29,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {8295#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {8297#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:29,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {8297#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {8297#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:29,939 INFO L290 TraceCheckUtils]: 2: Hoare triple {8297#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8297#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:29,940 INFO L290 TraceCheckUtils]: 3: Hoare triple {8297#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8297#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:29,940 INFO L290 TraceCheckUtils]: 4: Hoare triple {8297#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8297#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:29,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {8297#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,941 INFO L290 TraceCheckUtils]: 6: Hoare triple {8298#(<= ~pc4~0 2)} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,942 INFO L290 TraceCheckUtils]: 7: Hoare triple {8298#(<= ~pc4~0 2)} assume { :end_inline_pop } true; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,942 INFO L290 TraceCheckUtils]: 8: Hoare triple {8298#(<= ~pc4~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {8298#(<= ~pc4~0 2)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,943 INFO L290 TraceCheckUtils]: 10: Hoare triple {8298#(<= ~pc4~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:29,943 INFO L290 TraceCheckUtils]: 11: Hoare triple {8298#(<= ~pc4~0 2)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:29,944 INFO L290 TraceCheckUtils]: 12: Hoare triple {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:29,944 INFO L290 TraceCheckUtils]: 13: Hoare triple {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:29,945 INFO L290 TraceCheckUtils]: 14: Hoare triple {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1; {8296#false} is VALID [2022-02-20 23:44:29,945 INFO L290 TraceCheckUtils]: 15: Hoare triple {8296#false} assume !(1 == #valid[~t4~0.base]); {8296#false} is VALID [2022-02-20 23:44:29,945 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:29,945 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:29,945 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1522535359] [2022-02-20 23:44:29,945 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1522535359] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:29,946 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1931138695] [2022-02-20 23:44:29,946 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:29,946 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:29,946 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:29,952 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:44:29,982 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:44:30,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:30,019 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:30,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:30,031 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:30,145 INFO L290 TraceCheckUtils]: 0: Hoare triple {8295#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {8304#(<= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {8304#(<= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,146 INFO L290 TraceCheckUtils]: 3: Hoare triple {8304#(<= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,147 INFO L290 TraceCheckUtils]: 4: Hoare triple {8304#(<= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,147 INFO L290 TraceCheckUtils]: 5: Hoare triple {8304#(<= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,148 INFO L290 TraceCheckUtils]: 6: Hoare triple {8298#(<= ~pc4~0 2)} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,148 INFO L290 TraceCheckUtils]: 7: Hoare triple {8298#(<= ~pc4~0 2)} assume { :end_inline_pop } true; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {8298#(<= ~pc4~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,149 INFO L290 TraceCheckUtils]: 9: Hoare triple {8298#(<= ~pc4~0 2)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,149 INFO L290 TraceCheckUtils]: 10: Hoare triple {8298#(<= ~pc4~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {8298#(<= ~pc4~0 2)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:30,150 INFO L290 TraceCheckUtils]: 12: Hoare triple {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:30,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {8299#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:30,151 INFO L290 TraceCheckUtils]: 14: Hoare triple {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1; {8296#false} is VALID [2022-02-20 23:44:30,151 INFO L290 TraceCheckUtils]: 15: Hoare triple {8296#false} assume !(1 == #valid[~t4~0.base]); {8296#false} is VALID [2022-02-20 23:44:30,151 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:30,151 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:30,244 INFO L290 TraceCheckUtils]: 15: Hoare triple {8296#false} assume !(1 == #valid[~t4~0.base]); {8296#false} is VALID [2022-02-20 23:44:30,247 INFO L290 TraceCheckUtils]: 14: Hoare triple {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1; {8296#false} is VALID [2022-02-20 23:44:30,248 INFO L290 TraceCheckUtils]: 13: Hoare triple {8356#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {8300#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:30,248 INFO L290 TraceCheckUtils]: 12: Hoare triple {8356#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {8356#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} is VALID [2022-02-20 23:44:30,249 INFO L290 TraceCheckUtils]: 11: Hoare triple {8298#(<= ~pc4~0 2)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8356#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} is VALID [2022-02-20 23:44:30,249 INFO L290 TraceCheckUtils]: 10: Hoare triple {8298#(<= ~pc4~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,250 INFO L290 TraceCheckUtils]: 9: Hoare triple {8298#(<= ~pc4~0 2)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,250 INFO L290 TraceCheckUtils]: 8: Hoare triple {8298#(<= ~pc4~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,250 INFO L290 TraceCheckUtils]: 7: Hoare triple {8298#(<= ~pc4~0 2)} assume { :end_inline_pop } true; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,251 INFO L290 TraceCheckUtils]: 6: Hoare triple {8298#(<= ~pc4~0 2)} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,252 INFO L290 TraceCheckUtils]: 5: Hoare triple {8304#(<= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {8298#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:30,252 INFO L290 TraceCheckUtils]: 4: Hoare triple {8304#(<= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,252 INFO L290 TraceCheckUtils]: 3: Hoare triple {8304#(<= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,253 INFO L290 TraceCheckUtils]: 2: Hoare triple {8304#(<= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,253 INFO L290 TraceCheckUtils]: 1: Hoare triple {8304#(<= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,254 INFO L290 TraceCheckUtils]: 0: Hoare triple {8295#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {8304#(<= ~pc4~0 1)} is VALID [2022-02-20 23:44:30,254 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:30,254 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1931138695] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:30,254 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:30,255 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 7 [2022-02-20 23:44:30,255 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [208507613] [2022-02-20 23:44:30,255 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:30,255 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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 16 [2022-02-20 23:44:30,255 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:30,256 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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:44:30,277 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:44:30,277 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:44:30,277 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:30,277 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:44:30,278 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:44:30,278 INFO L87 Difference]: Start difference. First operand 274 states and 416 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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:44:30,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:30,690 INFO L93 Difference]: Finished difference Result 613 states and 869 transitions. [2022-02-20 23:44:30,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:44:30,690 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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 16 [2022-02-20 23:44:30,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:30,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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:44:30,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 253 transitions. [2022-02-20 23:44:30,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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:44:30,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 253 transitions. [2022-02-20 23:44:30,694 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 253 transitions. [2022-02-20 23:44:30,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 253 edges. 253 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:30,907 INFO L225 Difference]: With dead ends: 613 [2022-02-20 23:44:30,907 INFO L226 Difference]: Without dead ends: 613 [2022-02-20 23:44:30,907 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 28 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:44:30,908 INFO L933 BasicCegarLoop]: 146 mSDtfsCounter, 243 mSDsluCounter, 374 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 520 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:30,908 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [243 Valid, 520 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:30,909 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 613 states. [2022-02-20 23:44:30,914 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 613 to 387. [2022-02-20 23:44:30,914 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:30,915 INFO L82 GeneralOperation]: Start isEquivalent. First operand 613 states. Second operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:30,915 INFO L74 IsIncluded]: Start isIncluded. First operand 613 states. Second operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:30,916 INFO L87 Difference]: Start difference. First operand 613 states. Second operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:30,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:30,934 INFO L93 Difference]: Finished difference Result 613 states and 869 transitions. [2022-02-20 23:44:30,934 INFO L276 IsEmpty]: Start isEmpty. Operand 613 states and 869 transitions. [2022-02-20 23:44:30,935 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:30,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:30,936 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 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 613 states. [2022-02-20 23:44:30,936 INFO L87 Difference]: Start difference. First operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 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 613 states. [2022-02-20 23:44:30,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:30,954 INFO L93 Difference]: Finished difference Result 613 states and 869 transitions. [2022-02-20 23:44:30,955 INFO L276 IsEmpty]: Start isEmpty. Operand 613 states and 869 transitions. [2022-02-20 23:44:30,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:30,956 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:30,956 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:30,956 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:30,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 375 states have (on average 1.5333333333333334) internal successors, (575), 386 states have internal predecessors, (575), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:30,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 575 transitions. [2022-02-20 23:44:30,965 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 575 transitions. Word has length 16 [2022-02-20 23:44:30,965 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:30,965 INFO L470 AbstractCegarLoop]: Abstraction has 387 states and 575 transitions. [2022-02-20 23:44:30,966 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 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:44:30,966 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 575 transitions. [2022-02-20 23:44:30,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:44:30,966 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:30,966 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:30,993 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:44:31,190 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,SelfDestructingSolverStorable10 [2022-02-20 23:44:31,190 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:31,191 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:31,191 INFO L85 PathProgramCache]: Analyzing trace with hash 53823374, now seen corresponding path program 2 times [2022-02-20 23:44:31,191 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:31,191 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [777783288] [2022-02-20 23:44:31,191 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:31,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:31,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:31,241 INFO L290 TraceCheckUtils]: 0: Hoare triple {10627#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {10629#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:31,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {10629#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {10629#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:31,242 INFO L290 TraceCheckUtils]: 2: Hoare triple {10629#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10629#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:31,242 INFO L290 TraceCheckUtils]: 3: Hoare triple {10629#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10629#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:31,243 INFO L290 TraceCheckUtils]: 4: Hoare triple {10629#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10629#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:31,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {10629#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,244 INFO L290 TraceCheckUtils]: 6: Hoare triple {10630#(not (= ~pc4~0 1))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,244 INFO L290 TraceCheckUtils]: 7: Hoare triple {10630#(not (= ~pc4~0 1))} assume { :end_inline_pop } true; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,244 INFO L290 TraceCheckUtils]: 8: Hoare triple {10630#(not (= ~pc4~0 1))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,244 INFO L290 TraceCheckUtils]: 9: Hoare triple {10630#(not (= ~pc4~0 1))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,245 INFO L290 TraceCheckUtils]: 10: Hoare triple {10630#(not (= ~pc4~0 1))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10630#(not (= ~pc4~0 1))} is VALID [2022-02-20 23:44:31,245 INFO L290 TraceCheckUtils]: 11: Hoare triple {10630#(not (= ~pc4~0 1))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:31,245 INFO L290 TraceCheckUtils]: 12: Hoare triple {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {10628#false} assume { :end_inline_pop } true; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 14: Hoare triple {10628#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 15: Hoare triple {10628#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 16: Hoare triple {10628#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 17: Hoare triple {10628#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10628#false} is VALID [2022-02-20 23:44:31,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {10628#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {10628#false} is VALID [2022-02-20 23:44:31,247 INFO L290 TraceCheckUtils]: 19: Hoare triple {10628#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {10628#false} is VALID [2022-02-20 23:44:31,247 INFO L290 TraceCheckUtils]: 20: Hoare triple {10628#false} assume pop_#t~switch7#1; {10628#false} is VALID [2022-02-20 23:44:31,247 INFO L290 TraceCheckUtils]: 21: Hoare triple {10628#false} assume !(1 == #valid[~t4~0.base]); {10628#false} is VALID [2022-02-20 23:44:31,247 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 11 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:31,247 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:31,247 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [777783288] [2022-02-20 23:44:31,248 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [777783288] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:31,248 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [918478177] [2022-02-20 23:44:31,248 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:44:31,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:31,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:31,249 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:44:31,249 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:44:31,349 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:44:31,350 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:44:31,350 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:31,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:31,366 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:31,541 INFO L290 TraceCheckUtils]: 0: Hoare triple {10627#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {10627#true} is VALID [2022-02-20 23:44:31,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {10627#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {10627#true} is VALID [2022-02-20 23:44:31,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {10627#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10627#true} is VALID [2022-02-20 23:44:31,541 INFO L290 TraceCheckUtils]: 3: Hoare triple {10627#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 4: Hoare triple {10627#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {10627#true} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {10627#true} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {10627#true} assume { :end_inline_pop } true; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {10627#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10627#true} is VALID [2022-02-20 23:44:31,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {10627#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10627#true} is VALID [2022-02-20 23:44:31,543 INFO L290 TraceCheckUtils]: 10: Hoare triple {10627#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10627#true} is VALID [2022-02-20 23:44:31,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {10627#true} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10668#(or (<= ~pc4~0 2) (not |ULTIMATE.start_pop_#t~switch7#1|))} is VALID [2022-02-20 23:44:31,544 INFO L290 TraceCheckUtils]: 12: Hoare triple {10668#(or (<= ~pc4~0 2) (not |ULTIMATE.start_pop_#t~switch7#1|))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,544 INFO L290 TraceCheckUtils]: 13: Hoare triple {10672#(<= ~pc4~0 2)} assume { :end_inline_pop } true; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,545 INFO L290 TraceCheckUtils]: 14: Hoare triple {10672#(<= ~pc4~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,545 INFO L290 TraceCheckUtils]: 15: Hoare triple {10672#(<= ~pc4~0 2)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,545 INFO L290 TraceCheckUtils]: 16: Hoare triple {10672#(<= ~pc4~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,550 INFO L290 TraceCheckUtils]: 17: Hoare triple {10672#(<= ~pc4~0 2)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10688#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:31,550 INFO L290 TraceCheckUtils]: 18: Hoare triple {10688#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {10688#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} is VALID [2022-02-20 23:44:31,551 INFO L290 TraceCheckUtils]: 19: Hoare triple {10688#(<= |ULTIMATE.start_pop_#t~post6#1| 2)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:31,552 INFO L290 TraceCheckUtils]: 20: Hoare triple {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1; {10628#false} is VALID [2022-02-20 23:44:31,552 INFO L290 TraceCheckUtils]: 21: Hoare triple {10628#false} assume !(1 == #valid[~t4~0.base]); {10628#false} is VALID [2022-02-20 23:44:31,552 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 11 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:44:31,552 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:31,630 INFO L290 TraceCheckUtils]: 21: Hoare triple {10628#false} assume !(1 == #valid[~t4~0.base]); {10628#false} is VALID [2022-02-20 23:44:31,631 INFO L290 TraceCheckUtils]: 20: Hoare triple {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} assume pop_#t~switch7#1; {10628#false} is VALID [2022-02-20 23:44:31,631 INFO L290 TraceCheckUtils]: 19: Hoare triple {10707#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {10631#(not |ULTIMATE.start_pop_#t~switch7#1|)} is VALID [2022-02-20 23:44:31,632 INFO L290 TraceCheckUtils]: 18: Hoare triple {10707#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {10707#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} is VALID [2022-02-20 23:44:31,632 INFO L290 TraceCheckUtils]: 17: Hoare triple {10672#(<= ~pc4~0 2)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10707#(not (= |ULTIMATE.start_pop_#t~post6#1| 3))} is VALID [2022-02-20 23:44:31,632 INFO L290 TraceCheckUtils]: 16: Hoare triple {10672#(<= ~pc4~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {10672#(<= ~pc4~0 2)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {10672#(<= ~pc4~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,633 INFO L290 TraceCheckUtils]: 13: Hoare triple {10672#(<= ~pc4~0 2)} assume { :end_inline_pop } true; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,634 INFO L290 TraceCheckUtils]: 12: Hoare triple {10668#(or (<= ~pc4~0 2) (not |ULTIMATE.start_pop_#t~switch7#1|))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10672#(<= ~pc4~0 2)} is VALID [2022-02-20 23:44:31,634 INFO L290 TraceCheckUtils]: 11: Hoare triple {10627#true} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10668#(or (<= ~pc4~0 2) (not |ULTIMATE.start_pop_#t~switch7#1|))} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 10: Hoare triple {10627#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10627#true} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 9: Hoare triple {10627#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10627#true} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 8: Hoare triple {10627#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10627#true} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 7: Hoare triple {10627#true} assume { :end_inline_pop } true; {10627#true} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 6: Hoare triple {10627#true} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {10627#true} is VALID [2022-02-20 23:44:31,635 INFO L290 TraceCheckUtils]: 5: Hoare triple {10627#true} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {10627#true} is VALID [2022-02-20 23:44:31,636 INFO L290 TraceCheckUtils]: 4: Hoare triple {10627#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {10627#true} is VALID [2022-02-20 23:44:31,636 INFO L290 TraceCheckUtils]: 3: Hoare triple {10627#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {10627#true} is VALID [2022-02-20 23:44:31,636 INFO L290 TraceCheckUtils]: 2: Hoare triple {10627#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {10627#true} is VALID [2022-02-20 23:44:31,636 INFO L290 TraceCheckUtils]: 1: Hoare triple {10627#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {10627#true} is VALID [2022-02-20 23:44:31,636 INFO L290 TraceCheckUtils]: 0: Hoare triple {10627#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {10627#true} is VALID [2022-02-20 23:44:31,637 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 11 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 23:44:31,637 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [918478177] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:31,637 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:31,637 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 6, 6] total 9 [2022-02-20 23:44:31,637 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [212627322] [2022-02-20 23:44:31,637 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:31,638 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:44:31,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:31,638 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:31,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:31,667 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:44:31,667 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:31,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:44:31,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:44:31,668 INFO L87 Difference]: Start difference. First operand 387 states and 575 transitions. Second operand has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:32,217 INFO L93 Difference]: Finished difference Result 831 states and 1155 transitions. [2022-02-20 23:44:32,217 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:44:32,217 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:44:32,217 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:32,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 339 transitions. [2022-02-20 23:44:32,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 339 transitions. [2022-02-20 23:44:32,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 339 transitions. [2022-02-20 23:44:32,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 339 edges. 339 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:32,478 INFO L225 Difference]: With dead ends: 831 [2022-02-20 23:44:32,479 INFO L226 Difference]: Without dead ends: 831 [2022-02-20 23:44:32,479 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=57, Invalid=125, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:44:32,479 INFO L933 BasicCegarLoop]: 146 mSDtfsCounter, 425 mSDsluCounter, 479 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 425 SdHoareTripleChecker+Valid, 625 SdHoareTripleChecker+Invalid, 78 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:32,480 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [425 Valid, 625 Invalid, 78 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:32,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 831 states. [2022-02-20 23:44:32,487 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 831 to 468. [2022-02-20 23:44:32,487 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:32,488 INFO L82 GeneralOperation]: Start isEquivalent. First operand 831 states. Second operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,488 INFO L74 IsIncluded]: Start isIncluded. First operand 831 states. Second operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,489 INFO L87 Difference]: Start difference. First operand 831 states. Second operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:32,521 INFO L93 Difference]: Finished difference Result 831 states and 1155 transitions. [2022-02-20 23:44:32,521 INFO L276 IsEmpty]: Start isEmpty. Operand 831 states and 1155 transitions. [2022-02-20 23:44:32,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:32,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:32,523 INFO L74 IsIncluded]: Start isIncluded. First operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 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 831 states. [2022-02-20 23:44:32,524 INFO L87 Difference]: Start difference. First operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 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 831 states. [2022-02-20 23:44:32,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:32,557 INFO L93 Difference]: Finished difference Result 831 states and 1155 transitions. [2022-02-20 23:44:32,557 INFO L276 IsEmpty]: Start isEmpty. Operand 831 states and 1155 transitions. [2022-02-20 23:44:32,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:32,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:32,558 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:32,558 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:32,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 468 states, 456 states have (on average 1.5043859649122806) internal successors, (686), 467 states have internal predecessors, (686), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 468 states to 468 states and 686 transitions. [2022-02-20 23:44:32,571 INFO L78 Accepts]: Start accepts. Automaton has 468 states and 686 transitions. Word has length 22 [2022-02-20 23:44:32,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:32,571 INFO L470 AbstractCegarLoop]: Abstraction has 468 states and 686 transitions. [2022-02-20 23:44:32,571 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.777777777777778) internal successors, (43), 9 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:32,571 INFO L276 IsEmpty]: Start isEmpty. Operand 468 states and 686 transitions. [2022-02-20 23:44:32,572 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 23:44:32,572 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:32,572 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:32,595 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-20 23:44:32,787 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:32,787 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:32,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:32,788 INFO L85 PathProgramCache]: Analyzing trace with hash -2107196217, now seen corresponding path program 1 times [2022-02-20 23:44:32,788 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:32,788 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127750977] [2022-02-20 23:44:32,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:32,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:32,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:32,856 INFO L290 TraceCheckUtils]: 0: Hoare triple {13739#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,857 INFO L290 TraceCheckUtils]: 2: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,858 INFO L290 TraceCheckUtils]: 3: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,858 INFO L290 TraceCheckUtils]: 4: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,859 INFO L290 TraceCheckUtils]: 5: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:32,859 INFO L290 TraceCheckUtils]: 6: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume { :end_inline_pop } true; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,867 INFO L290 TraceCheckUtils]: 10: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,868 INFO L290 TraceCheckUtils]: 12: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,868 INFO L290 TraceCheckUtils]: 13: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume pop_#t~switch7#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:32,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {13740#false} is VALID [2022-02-20 23:44:32,869 INFO L290 TraceCheckUtils]: 15: Hoare triple {13740#false} assume { :end_inline_pop } true; {13740#false} is VALID [2022-02-20 23:44:32,869 INFO L290 TraceCheckUtils]: 16: Hoare triple {13740#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13740#false} is VALID [2022-02-20 23:44:32,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {13740#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13740#false} is VALID [2022-02-20 23:44:32,870 INFO L290 TraceCheckUtils]: 18: Hoare triple {13740#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13740#false} is VALID [2022-02-20 23:44:32,870 INFO L290 TraceCheckUtils]: 19: Hoare triple {13740#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:32,871 INFO L290 TraceCheckUtils]: 20: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:32,871 INFO L290 TraceCheckUtils]: 21: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:32,871 INFO L290 TraceCheckUtils]: 22: Hoare triple {13740#false} assume pop_#t~switch7#1; {13740#false} is VALID [2022-02-20 23:44:32,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {13740#false} assume !(1 == #valid[~t4~0.base]); {13740#false} is VALID [2022-02-20 23:44:32,875 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:32,875 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:32,875 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2127750977] [2022-02-20 23:44:32,875 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2127750977] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:32,875 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [114843031] [2022-02-20 23:44:32,875 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:32,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:32,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:32,877 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:44:32,878 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:44:32,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:32,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 23:44:32,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:32,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:33,057 INFO L290 TraceCheckUtils]: 0: Hoare triple {13739#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,058 INFO L290 TraceCheckUtils]: 1: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,059 INFO L290 TraceCheckUtils]: 3: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,059 INFO L290 TraceCheckUtils]: 4: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,060 INFO L290 TraceCheckUtils]: 5: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,061 INFO L290 TraceCheckUtils]: 6: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume { :end_inline_pop } true; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,063 INFO L290 TraceCheckUtils]: 10: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,064 INFO L290 TraceCheckUtils]: 11: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,064 INFO L290 TraceCheckUtils]: 13: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume pop_#t~switch7#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {13740#false} is VALID [2022-02-20 23:44:33,065 INFO L290 TraceCheckUtils]: 15: Hoare triple {13740#false} assume { :end_inline_pop } true; {13740#false} is VALID [2022-02-20 23:44:33,065 INFO L290 TraceCheckUtils]: 16: Hoare triple {13740#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13740#false} is VALID [2022-02-20 23:44:33,065 INFO L290 TraceCheckUtils]: 17: Hoare triple {13740#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13740#false} is VALID [2022-02-20 23:44:33,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {13740#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L290 TraceCheckUtils]: 19: Hoare triple {13740#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L290 TraceCheckUtils]: 20: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L290 TraceCheckUtils]: 21: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L290 TraceCheckUtils]: 22: Hoare triple {13740#false} assume pop_#t~switch7#1; {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L290 TraceCheckUtils]: 23: Hoare triple {13740#false} assume !(1 == #valid[~t4~0.base]); {13740#false} is VALID [2022-02-20 23:44:33,066 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:33,067 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:33,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {13740#false} assume !(1 == #valid[~t4~0.base]); {13740#false} is VALID [2022-02-20 23:44:33,160 INFO L290 TraceCheckUtils]: 22: Hoare triple {13740#false} assume pop_#t~switch7#1; {13740#false} is VALID [2022-02-20 23:44:33,160 INFO L290 TraceCheckUtils]: 21: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {13740#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {13740#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {13740#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {13740#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {13740#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13740#false} is VALID [2022-02-20 23:44:33,161 INFO L290 TraceCheckUtils]: 15: Hoare triple {13740#false} assume { :end_inline_pop } true; {13740#false} is VALID [2022-02-20 23:44:33,162 INFO L290 TraceCheckUtils]: 14: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {13740#false} is VALID [2022-02-20 23:44:33,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume pop_#t~switch7#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,163 INFO L290 TraceCheckUtils]: 12: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,163 INFO L290 TraceCheckUtils]: 11: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,164 INFO L290 TraceCheckUtils]: 10: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,164 INFO L290 TraceCheckUtils]: 9: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,165 INFO L290 TraceCheckUtils]: 8: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,165 INFO L290 TraceCheckUtils]: 7: Hoare triple {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} assume { :end_inline_pop } true; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,165 INFO L290 TraceCheckUtils]: 6: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {13742#(and (= ~t4~0.base 0) (= ~t4~0.offset 0))} is VALID [2022-02-20 23:44:33,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,166 INFO L290 TraceCheckUtils]: 4: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,167 INFO L290 TraceCheckUtils]: 3: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,169 INFO L290 TraceCheckUtils]: 0: Hoare triple {13739#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {13741#(and (= ~S~0.base 0) (= ~S~0.offset 0))} is VALID [2022-02-20 23:44:33,169 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:33,169 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [114843031] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:33,169 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:33,170 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 3 [2022-02-20 23:44:33,170 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [521345642] [2022-02-20 23:44:33,170 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:33,170 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,171 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:33,171 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), 3 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:44:33,188 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:44:33,188 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:44:33,188 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:33,189 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:44:33,189 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:44:33,189 INFO L87 Difference]: Start difference. First operand 468 states and 686 transitions. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:33,448 INFO L93 Difference]: Finished difference Result 1116 states and 1618 transitions. [2022-02-20 23:44:33,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:44:33,449 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,449 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:33,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 207 transitions. [2022-02-20 23:44:33,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 207 transitions. [2022-02-20 23:44:33,452 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 207 transitions. [2022-02-20 23:44:33,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 207 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:33,659 INFO L225 Difference]: With dead ends: 1116 [2022-02-20 23:44:33,659 INFO L226 Difference]: Without dead ends: 1116 [2022-02-20 23:44:33,660 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:44:33,660 INFO L933 BasicCegarLoop]: 53 mSDtfsCounter, 173 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 173 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:33,661 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [173 Valid, 163 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:33,662 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1116 states. [2022-02-20 23:44:33,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1116 to 995. [2022-02-20 23:44:33,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:33,674 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1116 states. Second operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:33,675 INFO L74 IsIncluded]: Start isIncluded. First operand 1116 states. Second operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:33,676 INFO L87 Difference]: Start difference. First operand 1116 states. Second operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:33,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:33,743 INFO L93 Difference]: Finished difference Result 1116 states and 1618 transitions. [2022-02-20 23:44:33,743 INFO L276 IsEmpty]: Start isEmpty. Operand 1116 states and 1618 transitions. [2022-02-20 23:44:33,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:33,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:33,746 INFO L74 IsIncluded]: Start isIncluded. First operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 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 1116 states. [2022-02-20 23:44:33,747 INFO L87 Difference]: Start difference. First operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 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 1116 states. [2022-02-20 23:44:33,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:33,800 INFO L93 Difference]: Finished difference Result 1116 states and 1618 transitions. [2022-02-20 23:44:33,800 INFO L276 IsEmpty]: Start isEmpty. Operand 1116 states and 1618 transitions. [2022-02-20 23:44:33,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:33,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:33,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:33,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:33,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 995 states, 983 states have (on average 1.4933875890132249) internal successors, (1468), 994 states have internal predecessors, (1468), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:33,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 995 states to 995 states and 1468 transitions. [2022-02-20 23:44:33,849 INFO L78 Accepts]: Start accepts. Automaton has 995 states and 1468 transitions. Word has length 24 [2022-02-20 23:44:33,849 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:33,849 INFO L470 AbstractCegarLoop]: Abstraction has 995 states and 1468 transitions. [2022-02-20 23:44:33,849 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 3 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:44:33,850 INFO L276 IsEmpty]: Start isEmpty. Operand 995 states and 1468 transitions. [2022-02-20 23:44:33,850 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:44:33,850 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:33,850 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:33,878 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:44:34,075 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:34,075 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:34,076 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:34,076 INFO L85 PathProgramCache]: Analyzing trace with hash -6965384, now seen corresponding path program 1 times [2022-02-20 23:44:34,076 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:34,076 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [569557894] [2022-02-20 23:44:34,076 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:34,076 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:34,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:34,124 INFO L290 TraceCheckUtils]: 0: Hoare triple {18228#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {18230#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {18230#(= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {18230#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,125 INFO L290 TraceCheckUtils]: 2: Hoare triple {18230#(= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18230#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,125 INFO L290 TraceCheckUtils]: 3: Hoare triple {18230#(= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18230#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,125 INFO L290 TraceCheckUtils]: 4: Hoare triple {18230#(= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18230#(= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,126 INFO L290 TraceCheckUtils]: 5: Hoare triple {18230#(= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,126 INFO L290 TraceCheckUtils]: 6: Hoare triple {18231#(<= ~pc1~0 2)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,126 INFO L290 TraceCheckUtils]: 7: Hoare triple {18231#(<= ~pc1~0 2)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,127 INFO L290 TraceCheckUtils]: 8: Hoare triple {18231#(<= ~pc1~0 2)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,127 INFO L290 TraceCheckUtils]: 9: Hoare triple {18231#(<= ~pc1~0 2)} assume { :end_inline_push } true; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,128 INFO L290 TraceCheckUtils]: 10: Hoare triple {18231#(<= ~pc1~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,128 INFO L290 TraceCheckUtils]: 11: Hoare triple {18231#(<= ~pc1~0 2)} assume main_#t~short11#1; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,128 INFO L290 TraceCheckUtils]: 12: Hoare triple {18231#(<= ~pc1~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,129 INFO L290 TraceCheckUtils]: 13: Hoare triple {18231#(<= ~pc1~0 2)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,129 INFO L290 TraceCheckUtils]: 14: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,129 INFO L290 TraceCheckUtils]: 15: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,130 INFO L290 TraceCheckUtils]: 16: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,130 INFO L290 TraceCheckUtils]: 17: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,131 INFO L290 TraceCheckUtils]: 18: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:34,131 INFO L290 TraceCheckUtils]: 19: Hoare triple {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {18229#false} is VALID [2022-02-20 23:44:34,131 INFO L290 TraceCheckUtils]: 20: Hoare triple {18229#false} assume { :end_inline_push } true; {18229#false} is VALID [2022-02-20 23:44:34,131 INFO L290 TraceCheckUtils]: 21: Hoare triple {18229#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18229#false} is VALID [2022-02-20 23:44:34,131 INFO L290 TraceCheckUtils]: 22: Hoare triple {18229#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18229#false} is VALID [2022-02-20 23:44:34,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {18229#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {18229#false} is VALID [2022-02-20 23:44:34,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {18229#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {18229#false} is VALID [2022-02-20 23:44:34,132 INFO L290 TraceCheckUtils]: 25: Hoare triple {18229#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {18229#false} is VALID [2022-02-20 23:44:34,132 INFO L290 TraceCheckUtils]: 26: Hoare triple {18229#false} assume !(#valid == main_old_#valid#1); {18229#false} is VALID [2022-02-20 23:44:34,132 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:34,132 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:34,133 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [569557894] [2022-02-20 23:44:34,133 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [569557894] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:34,133 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [50958281] [2022-02-20 23:44:34,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:34,133 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:34,133 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:34,134 INFO L229 MonitoredProcess]: Starting monitored process 6 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:44:34,163 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-02-20 23:44:34,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:34,201 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 23:44:34,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:34,217 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:34,319 INFO L290 TraceCheckUtils]: 0: Hoare triple {18228#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {18237#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,320 INFO L290 TraceCheckUtils]: 1: Hoare triple {18237#(<= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {18237#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {18237#(<= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18237#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,321 INFO L290 TraceCheckUtils]: 3: Hoare triple {18237#(<= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18237#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,321 INFO L290 TraceCheckUtils]: 4: Hoare triple {18237#(<= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18237#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:34,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {18237#(<= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,322 INFO L290 TraceCheckUtils]: 6: Hoare triple {18231#(<= ~pc1~0 2)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,322 INFO L290 TraceCheckUtils]: 7: Hoare triple {18231#(<= ~pc1~0 2)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,323 INFO L290 TraceCheckUtils]: 8: Hoare triple {18231#(<= ~pc1~0 2)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,323 INFO L290 TraceCheckUtils]: 9: Hoare triple {18231#(<= ~pc1~0 2)} assume { :end_inline_push } true; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,323 INFO L290 TraceCheckUtils]: 10: Hoare triple {18231#(<= ~pc1~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,324 INFO L290 TraceCheckUtils]: 11: Hoare triple {18231#(<= ~pc1~0 2)} assume main_#t~short11#1; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,324 INFO L290 TraceCheckUtils]: 12: Hoare triple {18231#(<= ~pc1~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18231#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:34,325 INFO L290 TraceCheckUtils]: 13: Hoare triple {18231#(<= ~pc1~0 2)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,325 INFO L290 TraceCheckUtils]: 14: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,325 INFO L290 TraceCheckUtils]: 15: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,326 INFO L290 TraceCheckUtils]: 16: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,326 INFO L290 TraceCheckUtils]: 17: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} is VALID [2022-02-20 23:44:34,326 INFO L290 TraceCheckUtils]: 18: Hoare triple {18232#(<= |ULTIMATE.start_push_#t~post3#1| 2)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 19: Hoare triple {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {18229#false} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 20: Hoare triple {18229#false} assume { :end_inline_push } true; {18229#false} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 21: Hoare triple {18229#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18229#false} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 22: Hoare triple {18229#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18229#false} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 23: Hoare triple {18229#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {18229#false} is VALID [2022-02-20 23:44:34,327 INFO L290 TraceCheckUtils]: 24: Hoare triple {18229#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {18229#false} is VALID [2022-02-20 23:44:34,328 INFO L290 TraceCheckUtils]: 25: Hoare triple {18229#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {18229#false} is VALID [2022-02-20 23:44:34,328 INFO L290 TraceCheckUtils]: 26: Hoare triple {18229#false} assume !(#valid == main_old_#valid#1); {18229#false} is VALID [2022-02-20 23:44:34,328 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:34,328 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:34,445 INFO L290 TraceCheckUtils]: 26: Hoare triple {18229#false} assume !(#valid == main_old_#valid#1); {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 25: Hoare triple {18229#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {18229#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 23: Hoare triple {18229#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 22: Hoare triple {18229#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 21: Hoare triple {18229#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {18229#false} assume { :end_inline_push } true; {18229#false} is VALID [2022-02-20 23:44:34,446 INFO L290 TraceCheckUtils]: 19: Hoare triple {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {18229#false} is VALID [2022-02-20 23:44:34,447 INFO L290 TraceCheckUtils]: 18: Hoare triple {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {18233#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:34,447 INFO L290 TraceCheckUtils]: 17: Hoare triple {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:34,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:34,448 INFO L290 TraceCheckUtils]: 15: Hoare triple {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:34,449 INFO L290 TraceCheckUtils]: 14: Hoare triple {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:34,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {18356#(not (<= 6 ~pc1~0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18340#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:34,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {18356#(not (<= 6 ~pc1~0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,450 INFO L290 TraceCheckUtils]: 11: Hoare triple {18356#(not (<= 6 ~pc1~0))} assume main_#t~short11#1; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,450 INFO L290 TraceCheckUtils]: 10: Hoare triple {18356#(not (<= 6 ~pc1~0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {18356#(not (<= 6 ~pc1~0))} assume { :end_inline_push } true; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {18356#(not (<= 6 ~pc1~0))} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {18356#(not (<= 6 ~pc1~0))} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,452 INFO L290 TraceCheckUtils]: 6: Hoare triple {18356#(not (<= 6 ~pc1~0))} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {18381#(< ~pc1~0 5)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {18356#(not (<= 6 ~pc1~0))} is VALID [2022-02-20 23:44:34,453 INFO L290 TraceCheckUtils]: 4: Hoare triple {18381#(< ~pc1~0 5)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {18381#(< ~pc1~0 5)} is VALID [2022-02-20 23:44:34,453 INFO L290 TraceCheckUtils]: 3: Hoare triple {18381#(< ~pc1~0 5)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {18381#(< ~pc1~0 5)} is VALID [2022-02-20 23:44:34,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {18381#(< ~pc1~0 5)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {18381#(< ~pc1~0 5)} is VALID [2022-02-20 23:44:34,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {18381#(< ~pc1~0 5)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {18381#(< ~pc1~0 5)} is VALID [2022-02-20 23:44:34,454 INFO L290 TraceCheckUtils]: 0: Hoare triple {18228#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {18381#(< ~pc1~0 5)} is VALID [2022-02-20 23:44:34,455 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:34,455 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [50958281] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:34,455 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:34,455 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 9 [2022-02-20 23:44:34,457 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [362860379] [2022-02-20 23:44:34,458 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:34,458 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:44:34,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:34,458 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:34,492 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:34,493 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:44:34,493 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:34,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:44:34,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:44:34,493 INFO L87 Difference]: Start difference. First operand 995 states and 1468 transitions. Second operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:35,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:35,491 INFO L93 Difference]: Finished difference Result 3487 states and 4850 transitions. [2022-02-20 23:44:35,491 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:44:35,491 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 23:44:35,491 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:35,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:35,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 400 transitions. [2022-02-20 23:44:35,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:35,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 400 transitions. [2022-02-20 23:44:35,496 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 400 transitions. [2022-02-20 23:44:35,796 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 400 edges. 400 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:36,141 INFO L225 Difference]: With dead ends: 3487 [2022-02-20 23:44:36,142 INFO L226 Difference]: Without dead ends: 3487 [2022-02-20 23:44:36,142 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=79, Invalid=193, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:44:36,142 INFO L933 BasicCegarLoop]: 96 mSDtfsCounter, 542 mSDsluCounter, 398 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 542 SdHoareTripleChecker+Valid, 494 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:36,143 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [542 Valid, 494 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:36,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3487 states. [2022-02-20 23:44:36,181 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3487 to 2363. [2022-02-20 23:44:36,182 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:36,184 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3487 states. Second operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:36,186 INFO L74 IsIncluded]: Start isIncluded. First operand 3487 states. Second operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:36,188 INFO L87 Difference]: Start difference. First operand 3487 states. Second operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:36,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:36,530 INFO L93 Difference]: Finished difference Result 3487 states and 4850 transitions. [2022-02-20 23:44:36,530 INFO L276 IsEmpty]: Start isEmpty. Operand 3487 states and 4850 transitions. [2022-02-20 23:44:36,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:36,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:36,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 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 3487 states. [2022-02-20 23:44:36,543 INFO L87 Difference]: Start difference. First operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 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 3487 states. [2022-02-20 23:44:36,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:36,887 INFO L93 Difference]: Finished difference Result 3487 states and 4850 transitions. [2022-02-20 23:44:36,887 INFO L276 IsEmpty]: Start isEmpty. Operand 3487 states and 4850 transitions. [2022-02-20 23:44:36,892 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:36,892 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:36,892 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:36,892 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:36,895 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2363 states, 2351 states have (on average 1.4427903019991493) internal successors, (3392), 2362 states have internal predecessors, (3392), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:37,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2363 states to 2363 states and 3392 transitions. [2022-02-20 23:44:37,044 INFO L78 Accepts]: Start accepts. Automaton has 2363 states and 3392 transitions. Word has length 27 [2022-02-20 23:44:37,044 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:37,044 INFO L470 AbstractCegarLoop]: Abstraction has 2363 states and 3392 transitions. [2022-02-20 23:44:37,044 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:37,044 INFO L276 IsEmpty]: Start isEmpty. Operand 2363 states and 3392 transitions. [2022-02-20 23:44:37,045 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:44:37,045 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:37,045 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:37,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:37,246 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-02-20 23:44:37,246 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:37,247 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:37,247 INFO L85 PathProgramCache]: Analyzing trace with hash 334990594, now seen corresponding path program 1 times [2022-02-20 23:44:37,247 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:37,247 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1784164424] [2022-02-20 23:44:37,247 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:37,247 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:37,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:37,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {31234#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {31236#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,306 INFO L290 TraceCheckUtils]: 2: Hoare triple {31236#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,306 INFO L290 TraceCheckUtils]: 3: Hoare triple {31236#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,306 INFO L290 TraceCheckUtils]: 4: Hoare triple {31236#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,307 INFO L290 TraceCheckUtils]: 5: Hoare triple {31236#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,307 INFO L290 TraceCheckUtils]: 6: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume { :end_inline_pop } true; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,309 INFO L290 TraceCheckUtils]: 10: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,310 INFO L290 TraceCheckUtils]: 11: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} is VALID [2022-02-20 23:44:37,310 INFO L290 TraceCheckUtils]: 12: Hoare triple {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31239#|ULTIMATE.start_pop_#t~switch7#1|} is VALID [2022-02-20 23:44:37,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {31239#|ULTIMATE.start_pop_#t~switch7#1|} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 4 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,311 INFO L290 TraceCheckUtils]: 15: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 5 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {31235#false} assume !pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 17: Hoare triple {31235#false} havoc pop_#t~post6#1;havoc pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 18: Hoare triple {31235#false} assume { :end_inline_pop } true; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 19: Hoare triple {31235#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 20: Hoare triple {31235#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 21: Hoare triple {31235#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 22: Hoare triple {31235#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,312 INFO L290 TraceCheckUtils]: 23: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,313 INFO L290 TraceCheckUtils]: 24: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,313 INFO L290 TraceCheckUtils]: 25: Hoare triple {31235#false} assume pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {31235#false} assume !(1 == #valid[~t4~0.base]); {31235#false} is VALID [2022-02-20 23:44:37,313 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:44:37,313 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:37,313 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1784164424] [2022-02-20 23:44:37,314 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1784164424] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:37,314 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1838119156] [2022-02-20 23:44:37,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:37,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:37,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:37,316 INFO L229 MonitoredProcess]: Starting monitored process 7 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:44:37,317 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-02-20 23:44:37,370 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:37,371 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:44:37,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:37,380 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:37,534 INFO L290 TraceCheckUtils]: 0: Hoare triple {31234#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {31236#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,535 INFO L290 TraceCheckUtils]: 2: Hoare triple {31236#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,535 INFO L290 TraceCheckUtils]: 3: Hoare triple {31236#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,535 INFO L290 TraceCheckUtils]: 4: Hoare triple {31236#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,536 INFO L290 TraceCheckUtils]: 5: Hoare triple {31236#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,536 INFO L290 TraceCheckUtils]: 6: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume { :end_inline_pop } true; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,537 INFO L290 TraceCheckUtils]: 8: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,537 INFO L290 TraceCheckUtils]: 9: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,538 INFO L290 TraceCheckUtils]: 10: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,538 INFO L290 TraceCheckUtils]: 11: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31239#|ULTIMATE.start_pop_#t~switch7#1|} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {31239#|ULTIMATE.start_pop_#t~switch7#1|} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 14: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 4 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 15: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 5 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 16: Hoare triple {31235#false} assume !pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 17: Hoare triple {31235#false} havoc pop_#t~post6#1;havoc pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 18: Hoare triple {31235#false} assume { :end_inline_pop } true; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 19: Hoare triple {31235#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 20: Hoare triple {31235#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31235#false} is VALID [2022-02-20 23:44:37,539 INFO L290 TraceCheckUtils]: 21: Hoare triple {31235#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L290 TraceCheckUtils]: 22: Hoare triple {31235#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L290 TraceCheckUtils]: 23: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L290 TraceCheckUtils]: 24: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L290 TraceCheckUtils]: 25: Hoare triple {31235#false} assume pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L290 TraceCheckUtils]: 26: Hoare triple {31235#false} assume !(1 == #valid[~t4~0.base]); {31235#false} is VALID [2022-02-20 23:44:37,540 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:44:37,540 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:37,663 INFO L290 TraceCheckUtils]: 26: Hoare triple {31235#false} assume !(1 == #valid[~t4~0.base]); {31235#false} is VALID [2022-02-20 23:44:37,664 INFO L290 TraceCheckUtils]: 25: Hoare triple {31235#false} assume pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {31235#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,664 INFO L290 TraceCheckUtils]: 21: Hoare triple {31235#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {31235#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 19: Hoare triple {31235#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 18: Hoare triple {31235#false} assume { :end_inline_pop } true; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 17: Hoare triple {31235#false} havoc pop_#t~post6#1;havoc pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 16: Hoare triple {31235#false} assume !pop_#t~switch7#1; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 15: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 5 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,665 INFO L290 TraceCheckUtils]: 14: Hoare triple {31235#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 4 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {31239#|ULTIMATE.start_pop_#t~switch7#1|} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {31235#false} is VALID [2022-02-20 23:44:37,666 INFO L290 TraceCheckUtils]: 12: Hoare triple {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {31239#|ULTIMATE.start_pop_#t~switch7#1|} is VALID [2022-02-20 23:44:37,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31238#(and (< 1 |ULTIMATE.start_pop_#t~post6#1|) (<= |ULTIMATE.start_pop_#t~post6#1| 2))} is VALID [2022-02-20 23:44:37,668 INFO L290 TraceCheckUtils]: 10: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,669 INFO L290 TraceCheckUtils]: 8: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,669 INFO L290 TraceCheckUtils]: 7: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume { :end_inline_pop } true; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,670 INFO L290 TraceCheckUtils]: 6: Hoare triple {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,670 INFO L290 TraceCheckUtils]: 5: Hoare triple {31236#(= ~pc4~0 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {31237#(and (<= ~pc4~0 2) (<= 2 ~pc4~0))} is VALID [2022-02-20 23:44:37,671 INFO L290 TraceCheckUtils]: 4: Hoare triple {31236#(= ~pc4~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,671 INFO L290 TraceCheckUtils]: 3: Hoare triple {31236#(= ~pc4~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,672 INFO L290 TraceCheckUtils]: 2: Hoare triple {31236#(= ~pc4~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,673 INFO L290 TraceCheckUtils]: 1: Hoare triple {31236#(= ~pc4~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,673 INFO L290 TraceCheckUtils]: 0: Hoare triple {31234#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {31236#(= ~pc4~0 1)} is VALID [2022-02-20 23:44:37,673 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:44:37,674 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1838119156] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:37,674 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:37,674 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 5 [2022-02-20 23:44:37,674 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1951051140] [2022-02-20 23:44:37,674 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:37,675 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) 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:44:37,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:37,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.5) 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:44:37,698 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:44:37,698 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:44:37,698 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:37,698 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:44:37,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:44:37,699 INFO L87 Difference]: Start difference. First operand 2363 states and 3392 transitions. Second operand has 6 states, 6 states have (on average 4.5) 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:44:38,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,206 INFO L93 Difference]: Finished difference Result 1756 states and 2405 transitions. [2022-02-20 23:44:38,206 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:44:38,207 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) 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:44:38,207 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:38,207 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) 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:44:38,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 317 transitions. [2022-02-20 23:44:38,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) 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:44:38,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 317 transitions. [2022-02-20 23:44:38,209 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 317 transitions. [2022-02-20 23:44:38,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 317 edges. 317 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:38,482 INFO L225 Difference]: With dead ends: 1756 [2022-02-20 23:44:38,482 INFO L226 Difference]: Without dead ends: 1756 [2022-02-20 23:44:38,483 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 49 SyntacticMatches, 5 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:44:38,483 INFO L933 BasicCegarLoop]: 148 mSDtfsCounter, 346 mSDsluCounter, 384 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 346 SdHoareTripleChecker+Valid, 532 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:38,483 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [346 Valid, 532 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:44:38,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1756 states. [2022-02-20 23:44:38,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1756 to 1081. [2022-02-20 23:44:38,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:38,499 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1756 states. Second operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,500 INFO L74 IsIncluded]: Start isIncluded. First operand 1756 states. Second operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,501 INFO L87 Difference]: Start difference. First operand 1756 states. Second operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,602 INFO L93 Difference]: Finished difference Result 1756 states and 2405 transitions. [2022-02-20 23:44:38,602 INFO L276 IsEmpty]: Start isEmpty. Operand 1756 states and 2405 transitions. [2022-02-20 23:44:38,604 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:38,604 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:38,606 INFO L74 IsIncluded]: Start isIncluded. First operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 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 1756 states. [2022-02-20 23:44:38,606 INFO L87 Difference]: Start difference. First operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 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 1756 states. [2022-02-20 23:44:38,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:38,731 INFO L93 Difference]: Finished difference Result 1756 states and 2405 transitions. [2022-02-20 23:44:38,731 INFO L276 IsEmpty]: Start isEmpty. Operand 1756 states and 2405 transitions. [2022-02-20 23:44:38,733 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:38,733 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:38,733 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:38,733 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:38,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1081 states, 1069 states have (on average 1.4069223573433116) internal successors, (1504), 1080 states have internal predecessors, (1504), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:38,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1081 states to 1081 states and 1504 transitions. [2022-02-20 23:44:38,781 INFO L78 Accepts]: Start accepts. Automaton has 1081 states and 1504 transitions. Word has length 27 [2022-02-20 23:44:38,781 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:38,781 INFO L470 AbstractCegarLoop]: Abstraction has 1081 states and 1504 transitions. [2022-02-20 23:44:38,782 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.5) 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:44:38,782 INFO L276 IsEmpty]: Start isEmpty. Operand 1081 states and 1504 transitions. [2022-02-20 23:44:38,785 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 23:44:38,785 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:38,785 INFO L514 BasicCegarLoop]: trace histogram [6, 5, 5, 5, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:38,812 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:39,007 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-02-20 23:44:39,008 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:39,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:39,008 INFO L85 PathProgramCache]: Analyzing trace with hash 2001409998, now seen corresponding path program 1 times [2022-02-20 23:44:39,008 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:39,008 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1509676881] [2022-02-20 23:44:39,009 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:39,009 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:39,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:39,113 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {37755#true} is VALID [2022-02-20 23:44:39,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {37755#true} is VALID [2022-02-20 23:44:39,113 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 4: Hoare triple {37755#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {37755#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 6: Hoare triple {37755#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 7: Hoare triple {37755#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {37755#true} is VALID [2022-02-20 23:44:39,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {37755#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {37755#true} assume { :end_inline_push } true; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 10: Hoare triple {37755#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 11: Hoare triple {37755#true} assume main_#t~short11#1; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {37755#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {37755#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {37755#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37755#true} is VALID [2022-02-20 23:44:39,115 INFO L290 TraceCheckUtils]: 15: Hoare triple {37755#true} assume push_#t~switch4#1; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 16: Hoare triple {37755#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 17: Hoare triple {37755#true} assume { :end_inline_push } true; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 18: Hoare triple {37755#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 19: Hoare triple {37755#true} assume main_#t~short11#1; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 20: Hoare triple {37755#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 21: Hoare triple {37755#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37755#true} is VALID [2022-02-20 23:44:39,116 INFO L290 TraceCheckUtils]: 22: Hoare triple {37755#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 23: Hoare triple {37755#true} assume push_#t~switch4#1; {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 24: Hoare triple {37755#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 25: Hoare triple {37755#true} assume { :end_inline_push } true; {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 26: Hoare triple {37755#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 27: Hoare triple {37755#true} assume main_#t~short11#1; {37755#true} is VALID [2022-02-20 23:44:39,117 INFO L290 TraceCheckUtils]: 28: Hoare triple {37755#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37755#true} is VALID [2022-02-20 23:44:39,118 INFO L290 TraceCheckUtils]: 29: Hoare triple {37755#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37757#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:44:39,118 INFO L290 TraceCheckUtils]: 30: Hoare triple {37757#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37758#(or (<= ~pc1~0 3) (not |ULTIMATE.start_push_#t~switch4#1|))} is VALID [2022-02-20 23:44:39,119 INFO L290 TraceCheckUtils]: 31: Hoare triple {37758#(or (<= ~pc1~0 3) (not |ULTIMATE.start_push_#t~switch4#1|))} assume push_#t~switch4#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,119 INFO L290 TraceCheckUtils]: 32: Hoare triple {37759#(<= ~pc1~0 3)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,119 INFO L290 TraceCheckUtils]: 33: Hoare triple {37759#(<= ~pc1~0 3)} assume { :end_inline_push } true; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,120 INFO L290 TraceCheckUtils]: 34: Hoare triple {37759#(<= ~pc1~0 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,120 INFO L290 TraceCheckUtils]: 35: Hoare triple {37759#(<= ~pc1~0 3)} assume main_#t~short11#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,122 INFO L290 TraceCheckUtils]: 36: Hoare triple {37759#(<= ~pc1~0 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,122 INFO L290 TraceCheckUtils]: 37: Hoare triple {37759#(<= ~pc1~0 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} is VALID [2022-02-20 23:44:39,122 INFO L290 TraceCheckUtils]: 38: Hoare triple {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} is VALID [2022-02-20 23:44:39,123 INFO L290 TraceCheckUtils]: 39: Hoare triple {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} is VALID [2022-02-20 23:44:39,123 INFO L290 TraceCheckUtils]: 40: Hoare triple {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} is VALID [2022-02-20 23:44:39,123 INFO L290 TraceCheckUtils]: 41: Hoare triple {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} is VALID [2022-02-20 23:44:39,125 INFO L290 TraceCheckUtils]: 42: Hoare triple {37760#(<= |ULTIMATE.start_push_#t~post3#1| 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:39,125 INFO L290 TraceCheckUtils]: 43: Hoare triple {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {37756#false} is VALID [2022-02-20 23:44:39,125 INFO L290 TraceCheckUtils]: 44: Hoare triple {37756#false} assume { :end_inline_push } true; {37756#false} is VALID [2022-02-20 23:44:39,125 INFO L290 TraceCheckUtils]: 45: Hoare triple {37756#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L290 TraceCheckUtils]: 46: Hoare triple {37756#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L290 TraceCheckUtils]: 47: Hoare triple {37756#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L290 TraceCheckUtils]: 48: Hoare triple {37756#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L290 TraceCheckUtils]: 49: Hoare triple {37756#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L290 TraceCheckUtils]: 50: Hoare triple {37756#false} assume !(#valid == main_old_#valid#1); {37756#false} is VALID [2022-02-20 23:44:39,126 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 50 proven. 2 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-02-20 23:44:39,127 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:39,127 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1509676881] [2022-02-20 23:44:39,127 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1509676881] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:39,127 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1073461212] [2022-02-20 23:44:39,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:39,127 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:39,128 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:39,132 INFO L229 MonitoredProcess]: Starting monitored process 8 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:44:39,147 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-20 23:44:39,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:39,235 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 13 conjunts are in the unsatisfiable core [2022-02-20 23:44:39,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:39,254 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:39,557 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {37765#(<= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {37765#(<= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,558 INFO L290 TraceCheckUtils]: 3: Hoare triple {37765#(<= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,558 INFO L290 TraceCheckUtils]: 4: Hoare triple {37765#(<= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,559 INFO L290 TraceCheckUtils]: 5: Hoare triple {37765#(<= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,559 INFO L290 TraceCheckUtils]: 6: Hoare triple {37781#(<= ~pc1~0 2)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {37781#(<= ~pc1~0 2)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,559 INFO L290 TraceCheckUtils]: 8: Hoare triple {37781#(<= ~pc1~0 2)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {37781#(<= ~pc1~0 2)} assume { :end_inline_push } true; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,563 INFO L290 TraceCheckUtils]: 10: Hoare triple {37781#(<= ~pc1~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,564 INFO L290 TraceCheckUtils]: 11: Hoare triple {37781#(<= ~pc1~0 2)} assume main_#t~short11#1; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {37781#(<= ~pc1~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {37781#(<= ~pc1~0 2)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {37759#(<= ~pc1~0 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,566 INFO L290 TraceCheckUtils]: 15: Hoare triple {37759#(<= ~pc1~0 3)} assume push_#t~switch4#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {37759#(<= ~pc1~0 3)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,566 INFO L290 TraceCheckUtils]: 17: Hoare triple {37759#(<= ~pc1~0 3)} assume { :end_inline_push } true; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,567 INFO L290 TraceCheckUtils]: 18: Hoare triple {37759#(<= ~pc1~0 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,567 INFO L290 TraceCheckUtils]: 19: Hoare triple {37759#(<= ~pc1~0 3)} assume main_#t~short11#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,568 INFO L290 TraceCheckUtils]: 20: Hoare triple {37759#(<= ~pc1~0 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,568 INFO L290 TraceCheckUtils]: 21: Hoare triple {37759#(<= ~pc1~0 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,568 INFO L290 TraceCheckUtils]: 22: Hoare triple {37830#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,569 INFO L290 TraceCheckUtils]: 23: Hoare triple {37830#(<= ~pc1~0 4)} assume push_#t~switch4#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,569 INFO L290 TraceCheckUtils]: 24: Hoare triple {37830#(<= ~pc1~0 4)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,573 INFO L290 TraceCheckUtils]: 25: Hoare triple {37830#(<= ~pc1~0 4)} assume { :end_inline_push } true; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,574 INFO L290 TraceCheckUtils]: 26: Hoare triple {37830#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,574 INFO L290 TraceCheckUtils]: 27: Hoare triple {37830#(<= ~pc1~0 4)} assume main_#t~short11#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,574 INFO L290 TraceCheckUtils]: 28: Hoare triple {37830#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,575 INFO L290 TraceCheckUtils]: 29: Hoare triple {37830#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,575 INFO L290 TraceCheckUtils]: 30: Hoare triple {37855#(<= ~pc1~0 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,575 INFO L290 TraceCheckUtils]: 31: Hoare triple {37855#(<= ~pc1~0 5)} assume push_#t~switch4#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,575 INFO L290 TraceCheckUtils]: 32: Hoare triple {37855#(<= ~pc1~0 5)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,576 INFO L290 TraceCheckUtils]: 33: Hoare triple {37855#(<= ~pc1~0 5)} assume { :end_inline_push } true; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,576 INFO L290 TraceCheckUtils]: 34: Hoare triple {37855#(<= ~pc1~0 5)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,576 INFO L290 TraceCheckUtils]: 35: Hoare triple {37855#(<= ~pc1~0 5)} assume main_#t~short11#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,576 INFO L290 TraceCheckUtils]: 36: Hoare triple {37855#(<= ~pc1~0 5)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,577 INFO L290 TraceCheckUtils]: 37: Hoare triple {37855#(<= ~pc1~0 5)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:44:39,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:44:39,577 INFO L290 TraceCheckUtils]: 39: Hoare triple {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:44:39,578 INFO L290 TraceCheckUtils]: 40: Hoare triple {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:44:39,578 INFO L290 TraceCheckUtils]: 41: Hoare triple {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:44:39,578 INFO L290 TraceCheckUtils]: 42: Hoare triple {37880#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 43: Hoare triple {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 44: Hoare triple {37756#false} assume { :end_inline_push } true; {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 45: Hoare triple {37756#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 46: Hoare triple {37756#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 47: Hoare triple {37756#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 48: Hoare triple {37756#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 49: Hoare triple {37756#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L290 TraceCheckUtils]: 50: Hoare triple {37756#false} assume !(#valid == main_old_#valid#1); {37756#false} is VALID [2022-02-20 23:44:39,579 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 19 proven. 65 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:39,579 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:39,821 INFO L290 TraceCheckUtils]: 50: Hoare triple {37756#false} assume !(#valid == main_old_#valid#1); {37756#false} is VALID [2022-02-20 23:44:39,821 INFO L290 TraceCheckUtils]: 49: Hoare triple {37756#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {37756#false} is VALID [2022-02-20 23:44:39,821 INFO L290 TraceCheckUtils]: 48: Hoare triple {37756#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {37756#false} is VALID [2022-02-20 23:44:39,821 INFO L290 TraceCheckUtils]: 47: Hoare triple {37756#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {37756#false} is VALID [2022-02-20 23:44:39,821 INFO L290 TraceCheckUtils]: 46: Hoare triple {37756#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37756#false} is VALID [2022-02-20 23:44:39,822 INFO L290 TraceCheckUtils]: 45: Hoare triple {37756#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37756#false} is VALID [2022-02-20 23:44:39,822 INFO L290 TraceCheckUtils]: 44: Hoare triple {37756#false} assume { :end_inline_push } true; {37756#false} is VALID [2022-02-20 23:44:39,822 INFO L290 TraceCheckUtils]: 43: Hoare triple {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {37756#false} is VALID [2022-02-20 23:44:39,822 INFO L290 TraceCheckUtils]: 42: Hoare triple {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {37761#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:39,823 INFO L290 TraceCheckUtils]: 41: Hoare triple {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:39,823 INFO L290 TraceCheckUtils]: 40: Hoare triple {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:39,824 INFO L290 TraceCheckUtils]: 39: Hoare triple {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:39,824 INFO L290 TraceCheckUtils]: 38: Hoare triple {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:39,825 INFO L290 TraceCheckUtils]: 37: Hoare triple {37855#(<= ~pc1~0 5)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37944#(not (= |ULTIMATE.start_push_#t~post3#1| 6))} is VALID [2022-02-20 23:44:39,825 INFO L290 TraceCheckUtils]: 36: Hoare triple {37855#(<= ~pc1~0 5)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,825 INFO L290 TraceCheckUtils]: 35: Hoare triple {37855#(<= ~pc1~0 5)} assume main_#t~short11#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,826 INFO L290 TraceCheckUtils]: 34: Hoare triple {37855#(<= ~pc1~0 5)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,826 INFO L290 TraceCheckUtils]: 33: Hoare triple {37855#(<= ~pc1~0 5)} assume { :end_inline_push } true; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,826 INFO L290 TraceCheckUtils]: 32: Hoare triple {37855#(<= ~pc1~0 5)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,827 INFO L290 TraceCheckUtils]: 31: Hoare triple {37855#(<= ~pc1~0 5)} assume push_#t~switch4#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,827 INFO L290 TraceCheckUtils]: 30: Hoare triple {37855#(<= ~pc1~0 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,827 INFO L290 TraceCheckUtils]: 29: Hoare triple {37830#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37855#(<= ~pc1~0 5)} is VALID [2022-02-20 23:44:39,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {37830#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,828 INFO L290 TraceCheckUtils]: 27: Hoare triple {37830#(<= ~pc1~0 4)} assume main_#t~short11#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,828 INFO L290 TraceCheckUtils]: 26: Hoare triple {37830#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {37830#(<= ~pc1~0 4)} assume { :end_inline_push } true; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {37830#(<= ~pc1~0 4)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,829 INFO L290 TraceCheckUtils]: 23: Hoare triple {37830#(<= ~pc1~0 4)} assume push_#t~switch4#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {37830#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,830 INFO L290 TraceCheckUtils]: 21: Hoare triple {37759#(<= ~pc1~0 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37830#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:39,831 INFO L290 TraceCheckUtils]: 20: Hoare triple {37759#(<= ~pc1~0 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,831 INFO L290 TraceCheckUtils]: 19: Hoare triple {37759#(<= ~pc1~0 3)} assume main_#t~short11#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,831 INFO L290 TraceCheckUtils]: 18: Hoare triple {37759#(<= ~pc1~0 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,832 INFO L290 TraceCheckUtils]: 17: Hoare triple {37759#(<= ~pc1~0 3)} assume { :end_inline_push } true; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,832 INFO L290 TraceCheckUtils]: 16: Hoare triple {37759#(<= ~pc1~0 3)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,832 INFO L290 TraceCheckUtils]: 15: Hoare triple {37759#(<= ~pc1~0 3)} assume push_#t~switch4#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,833 INFO L290 TraceCheckUtils]: 14: Hoare triple {37759#(<= ~pc1~0 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,833 INFO L290 TraceCheckUtils]: 13: Hoare triple {37781#(<= ~pc1~0 2)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37759#(<= ~pc1~0 3)} is VALID [2022-02-20 23:44:39,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {37781#(<= ~pc1~0 2)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,834 INFO L290 TraceCheckUtils]: 11: Hoare triple {37781#(<= ~pc1~0 2)} assume main_#t~short11#1; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,834 INFO L290 TraceCheckUtils]: 10: Hoare triple {37781#(<= ~pc1~0 2)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {37781#(<= ~pc1~0 2)} assume { :end_inline_push } true; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {37781#(<= ~pc1~0 2)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {37781#(<= ~pc1~0 2)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,836 INFO L290 TraceCheckUtils]: 6: Hoare triple {37781#(<= ~pc1~0 2)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,836 INFO L290 TraceCheckUtils]: 5: Hoare triple {37765#(<= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {37781#(<= ~pc1~0 2)} is VALID [2022-02-20 23:44:39,836 INFO L290 TraceCheckUtils]: 4: Hoare triple {37765#(<= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,837 INFO L290 TraceCheckUtils]: 3: Hoare triple {37765#(<= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {37765#(<= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {37765#(<= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {37765#(<= ~pc1~0 1)} is VALID [2022-02-20 23:44:39,838 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 19 proven. 65 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:44:39,838 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1073461212] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:39,839 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:39,839 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 8] total 13 [2022-02-20 23:44:39,839 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1942658468] [2022-02-20 23:44:39,839 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:39,839 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 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 51 [2022-02-20 23:44:39,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:39,840 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:39,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:39,896 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:44:39,896 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:39,896 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:44:39,896 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:44:39,897 INFO L87 Difference]: Start difference. First operand 1081 states and 1504 transitions. Second operand has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:41,221 INFO L93 Difference]: Finished difference Result 3000 states and 3991 transitions. [2022-02-20 23:44:41,221 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-02-20 23:44:41,221 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 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 51 [2022-02-20 23:44:41,221 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:41,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 576 transitions. [2022-02-20 23:44:41,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 576 transitions. [2022-02-20 23:44:41,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 576 transitions. [2022-02-20 23:44:41,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 576 edges. 576 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:41,827 INFO L225 Difference]: With dead ends: 3000 [2022-02-20 23:44:41,827 INFO L226 Difference]: Without dead ends: 3000 [2022-02-20 23:44:41,827 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 103 SyntacticMatches, 1 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 215 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=252, Invalid=618, Unknown=0, NotChecked=0, Total=870 [2022-02-20 23:44:41,828 INFO L933 BasicCegarLoop]: 164 mSDtfsCounter, 875 mSDsluCounter, 900 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 875 SdHoareTripleChecker+Valid, 1064 SdHoareTripleChecker+Invalid, 169 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:41,828 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [875 Valid, 1064 Invalid, 169 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:41,830 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3000 states. [2022-02-20 23:44:41,851 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3000 to 1204. [2022-02-20 23:44:41,851 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:41,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3000 states. Second operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,854 INFO L74 IsIncluded]: Start isIncluded. First operand 3000 states. Second operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:41,855 INFO L87 Difference]: Start difference. First operand 3000 states. Second operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,079 INFO L93 Difference]: Finished difference Result 3000 states and 3991 transitions. [2022-02-20 23:44:42,079 INFO L276 IsEmpty]: Start isEmpty. Operand 3000 states and 3991 transitions. [2022-02-20 23:44:42,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,083 INFO L74 IsIncluded]: Start isIncluded. First operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 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 3000 states. [2022-02-20 23:44:42,084 INFO L87 Difference]: Start difference. First operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 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 3000 states. [2022-02-20 23:44:42,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:42,418 INFO L93 Difference]: Finished difference Result 3000 states and 3991 transitions. [2022-02-20 23:44:42,418 INFO L276 IsEmpty]: Start isEmpty. Operand 3000 states and 3991 transitions. [2022-02-20 23:44:42,421 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:42,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:42,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:42,422 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:42,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1204 states, 1192 states have (on average 1.4236577181208054) internal successors, (1697), 1203 states have internal predecessors, (1697), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1204 states to 1204 states and 1697 transitions. [2022-02-20 23:44:42,478 INFO L78 Accepts]: Start accepts. Automaton has 1204 states and 1697 transitions. Word has length 51 [2022-02-20 23:44:42,478 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:42,478 INFO L470 AbstractCegarLoop]: Abstraction has 1204 states and 1697 transitions. [2022-02-20 23:44:42,478 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 6.153846153846154) internal successors, (80), 13 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:42,478 INFO L276 IsEmpty]: Start isEmpty. Operand 1204 states and 1697 transitions. [2022-02-20 23:44:42,480 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-20 23:44:42,480 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:42,480 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 5, 5, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:42,502 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-20 23:44:42,695 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:42,695 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:42,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:42,696 INFO L85 PathProgramCache]: Analyzing trace with hash 1426339750, now seen corresponding path program 1 times [2022-02-20 23:44:42,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:42,696 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1248651651] [2022-02-20 23:44:42,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:42,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:42,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:42,792 INFO L290 TraceCheckUtils]: 0: Hoare triple {48316#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {48316#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 3: Hoare triple {48316#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 4: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 5: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,793 INFO L290 TraceCheckUtils]: 6: Hoare triple {48316#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {48316#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {48316#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 10: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 11: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 12: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 13: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 15: Hoare triple {48316#true} assume push_#t~switch4#1; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {48316#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 17: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 18: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 19: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:42,795 INFO L290 TraceCheckUtils]: 21: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 23: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 24: Hoare triple {48316#true} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 25: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 26: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 27: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:42,796 INFO L290 TraceCheckUtils]: 28: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 29: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 30: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 31: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 32: Hoare triple {48316#true} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 33: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 34: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:42,797 INFO L290 TraceCheckUtils]: 35: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:42,798 INFO L290 TraceCheckUtils]: 36: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:42,798 INFO L290 TraceCheckUtils]: 37: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48318#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:44:42,798 INFO L290 TraceCheckUtils]: 38: Hoare triple {48318#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48318#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:44:42,799 INFO L290 TraceCheckUtils]: 39: Hoare triple {48318#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48319#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} is VALID [2022-02-20 23:44:42,799 INFO L290 TraceCheckUtils]: 40: Hoare triple {48319#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48320#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:42,800 INFO L290 TraceCheckUtils]: 41: Hoare triple {48320#(<= ~pc1~0 4)} assume { :end_inline_push } true; {48320#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:42,800 INFO L290 TraceCheckUtils]: 42: Hoare triple {48320#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48320#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:42,800 INFO L290 TraceCheckUtils]: 43: Hoare triple {48320#(<= ~pc1~0 4)} assume main_#t~short11#1; {48320#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:42,801 INFO L290 TraceCheckUtils]: 44: Hoare triple {48320#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48320#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:42,801 INFO L290 TraceCheckUtils]: 45: Hoare triple {48320#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:42,801 INFO L290 TraceCheckUtils]: 46: Hoare triple {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:42,802 INFO L290 TraceCheckUtils]: 47: Hoare triple {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:42,802 INFO L290 TraceCheckUtils]: 48: Hoare triple {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:42,802 INFO L290 TraceCheckUtils]: 49: Hoare triple {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:42,803 INFO L290 TraceCheckUtils]: 50: Hoare triple {48321#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:42,803 INFO L290 TraceCheckUtils]: 51: Hoare triple {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {48317#false} is VALID [2022-02-20 23:44:42,803 INFO L290 TraceCheckUtils]: 52: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:42,803 INFO L290 TraceCheckUtils]: 53: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:42,803 INFO L290 TraceCheckUtils]: 54: Hoare triple {48317#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48317#false} is VALID [2022-02-20 23:44:42,804 INFO L290 TraceCheckUtils]: 55: Hoare triple {48317#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:42,804 INFO L290 TraceCheckUtils]: 56: Hoare triple {48317#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {48317#false} is VALID [2022-02-20 23:44:42,804 INFO L290 TraceCheckUtils]: 57: Hoare triple {48317#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {48317#false} is VALID [2022-02-20 23:44:42,804 INFO L290 TraceCheckUtils]: 58: Hoare triple {48317#false} assume !(#valid == main_old_#valid#1); {48317#false} is VALID [2022-02-20 23:44:42,804 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 65 proven. 3 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2022-02-20 23:44:42,804 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:42,805 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1248651651] [2022-02-20 23:44:42,805 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1248651651] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:42,805 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [822850045] [2022-02-20 23:44:42,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:42,806 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:42,806 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:42,807 INFO L229 MonitoredProcess]: Starting monitored process 9 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:44:42,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-02-20 23:44:42,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:42,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:44:42,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:42,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:43,112 INFO L290 TraceCheckUtils]: 0: Hoare triple {48316#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {48316#true} is VALID [2022-02-20 23:44:43,112 INFO L290 TraceCheckUtils]: 1: Hoare triple {48316#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {48316#true} is VALID [2022-02-20 23:44:43,112 INFO L290 TraceCheckUtils]: 2: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 3: Hoare triple {48316#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 4: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 5: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 6: Hoare triple {48316#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {48316#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 8: Hoare triple {48316#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 9: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:43,113 INFO L290 TraceCheckUtils]: 10: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 11: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 12: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 13: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 14: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 15: Hoare triple {48316#true} assume push_#t~switch4#1; {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 16: Hoare triple {48316#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {48316#true} is VALID [2022-02-20 23:44:43,114 INFO L290 TraceCheckUtils]: 17: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:43,115 INFO L290 TraceCheckUtils]: 18: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,115 INFO L290 TraceCheckUtils]: 19: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:43,115 INFO L290 TraceCheckUtils]: 20: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,115 INFO L290 TraceCheckUtils]: 21: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48389#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} is VALID [2022-02-20 23:44:43,116 INFO L290 TraceCheckUtils]: 22: Hoare triple {48389#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48389#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} is VALID [2022-02-20 23:44:43,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {48389#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48396#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:44:43,117 INFO L290 TraceCheckUtils]: 24: Hoare triple {48396#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,117 INFO L290 TraceCheckUtils]: 25: Hoare triple {48400#(<= 4 ~pc1~0)} assume { :end_inline_push } true; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,118 INFO L290 TraceCheckUtils]: 26: Hoare triple {48400#(<= 4 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,118 INFO L290 TraceCheckUtils]: 27: Hoare triple {48400#(<= 4 ~pc1~0)} assume main_#t~short11#1; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,119 INFO L290 TraceCheckUtils]: 28: Hoare triple {48400#(<= 4 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,119 INFO L290 TraceCheckUtils]: 29: Hoare triple {48400#(<= 4 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48416#(<= 4 |ULTIMATE.start_push_#t~post3#1|)} is VALID [2022-02-20 23:44:43,120 INFO L290 TraceCheckUtils]: 30: Hoare triple {48416#(<= 4 |ULTIMATE.start_push_#t~post3#1|)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48416#(<= 4 |ULTIMATE.start_push_#t~post3#1|)} is VALID [2022-02-20 23:44:43,120 INFO L290 TraceCheckUtils]: 31: Hoare triple {48416#(<= 4 |ULTIMATE.start_push_#t~post3#1|)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 32: Hoare triple {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 33: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 34: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 35: Hoare triple {48317#false} assume main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 36: Hoare triple {48317#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 37: Hoare triple {48317#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 38: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,121 INFO L290 TraceCheckUtils]: 39: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 40: Hoare triple {48317#false} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 41: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 42: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 43: Hoare triple {48317#false} assume main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 44: Hoare triple {48317#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48317#false} is VALID [2022-02-20 23:44:43,122 INFO L290 TraceCheckUtils]: 45: Hoare triple {48317#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 46: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 47: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 48: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 49: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 50: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 51: Hoare triple {48317#false} assume push_#t~switch4#1;~pc1~0 := 1; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 52: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,123 INFO L290 TraceCheckUtils]: 53: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L290 TraceCheckUtils]: 54: Hoare triple {48317#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L290 TraceCheckUtils]: 55: Hoare triple {48317#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L290 TraceCheckUtils]: 56: Hoare triple {48317#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L290 TraceCheckUtils]: 57: Hoare triple {48317#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L290 TraceCheckUtils]: 58: Hoare triple {48317#false} assume !(#valid == main_old_#valid#1); {48317#false} is VALID [2022-02-20 23:44:43,124 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 92 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-02-20 23:44:43,125 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 58: Hoare triple {48317#false} assume !(#valid == main_old_#valid#1); {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 57: Hoare triple {48317#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 56: Hoare triple {48317#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 55: Hoare triple {48317#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 54: Hoare triple {48317#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 53: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 52: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 51: Hoare triple {48317#false} assume push_#t~switch4#1;~pc1~0 := 1; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 50: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 48: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 47: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 46: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 45: Hoare triple {48317#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 44: Hoare triple {48317#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 43: Hoare triple {48317#false} assume main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 42: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 41: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 40: Hoare triple {48317#false} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48317#false} is VALID [2022-02-20 23:44:43,282 INFO L290 TraceCheckUtils]: 39: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {48317#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,283 INFO L290 TraceCheckUtils]: 37: Hoare triple {48317#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48317#false} is VALID [2022-02-20 23:44:43,284 INFO L290 TraceCheckUtils]: 36: Hoare triple {48317#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48317#false} is VALID [2022-02-20 23:44:43,284 INFO L290 TraceCheckUtils]: 35: Hoare triple {48317#false} assume main_#t~short11#1; {48317#false} is VALID [2022-02-20 23:44:43,284 INFO L290 TraceCheckUtils]: 34: Hoare triple {48317#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48317#false} is VALID [2022-02-20 23:44:43,284 INFO L290 TraceCheckUtils]: 33: Hoare triple {48317#false} assume { :end_inline_push } true; {48317#false} is VALID [2022-02-20 23:44:43,291 INFO L290 TraceCheckUtils]: 32: Hoare triple {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48317#false} is VALID [2022-02-20 23:44:43,292 INFO L290 TraceCheckUtils]: 31: Hoare triple {48585#(not (= |ULTIMATE.start_push_#t~post3#1| 3))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48322#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:43,292 INFO L290 TraceCheckUtils]: 30: Hoare triple {48585#(not (= |ULTIMATE.start_push_#t~post3#1| 3))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48585#(not (= |ULTIMATE.start_push_#t~post3#1| 3))} is VALID [2022-02-20 23:44:43,293 INFO L290 TraceCheckUtils]: 29: Hoare triple {48400#(<= 4 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48585#(not (= |ULTIMATE.start_push_#t~post3#1| 3))} is VALID [2022-02-20 23:44:43,293 INFO L290 TraceCheckUtils]: 28: Hoare triple {48400#(<= 4 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,293 INFO L290 TraceCheckUtils]: 27: Hoare triple {48400#(<= 4 ~pc1~0)} assume main_#t~short11#1; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,293 INFO L290 TraceCheckUtils]: 26: Hoare triple {48400#(<= 4 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,294 INFO L290 TraceCheckUtils]: 25: Hoare triple {48400#(<= 4 ~pc1~0)} assume { :end_inline_push } true; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,294 INFO L290 TraceCheckUtils]: 24: Hoare triple {48396#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {48400#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:44:43,294 INFO L290 TraceCheckUtils]: 23: Hoare triple {48610#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {48396#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 22: Hoare triple {48610#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48610#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 21: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48610#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 20: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 19: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 18: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 17: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:43,295 INFO L290 TraceCheckUtils]: 16: Hoare triple {48316#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 15: Hoare triple {48316#true} assume push_#t~switch4#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 14: Hoare triple {48316#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 13: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 12: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 11: Hoare triple {48316#true} assume main_#t~short11#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 10: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 9: Hoare triple {48316#true} assume { :end_inline_push } true; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 8: Hoare triple {48316#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {48316#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 6: Hoare triple {48316#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {48316#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 4: Hoare triple {48316#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 3: Hoare triple {48316#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {48316#true} is VALID [2022-02-20 23:44:43,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {48316#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {48316#true} is VALID [2022-02-20 23:44:43,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {48316#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {48316#true} is VALID [2022-02-20 23:44:43,297 INFO L290 TraceCheckUtils]: 0: Hoare triple {48316#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {48316#true} is VALID [2022-02-20 23:44:43,297 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 94 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-02-20 23:44:43,297 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [822850045] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:43,297 INFO L191 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2022-02-20 23:44:43,297 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [7, 7] total 13 [2022-02-20 23:44:43,297 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [331314582] [2022-02-20 23:44:43,298 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:44:43,298 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 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 59 [2022-02-20 23:44:43,298 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:43,298 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:43,335 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:44:43,335 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:43,336 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:44:43,336 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=124, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:44:43,336 INFO L87 Difference]: Start difference. First operand 1204 states and 1697 transitions. Second operand has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:43,876 INFO L93 Difference]: Finished difference Result 2838 states and 3879 transitions. [2022-02-20 23:44:43,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:44:43,877 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 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 59 [2022-02-20 23:44:43,877 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:43,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 240 transitions. [2022-02-20 23:44:43,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:43,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 240 transitions. [2022-02-20 23:44:43,879 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 240 transitions. [2022-02-20 23:44:44,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 240 edges. 240 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:44,237 INFO L225 Difference]: With dead ends: 2838 [2022-02-20 23:44:44,238 INFO L226 Difference]: Without dead ends: 2838 [2022-02-20 23:44:44,238 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:44:44,238 INFO L933 BasicCegarLoop]: 95 mSDtfsCounter, 225 mSDsluCounter, 401 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 225 SdHoareTripleChecker+Valid, 496 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:44,239 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [225 Valid, 496 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:44:44,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2838 states. [2022-02-20 23:44:44,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2838 to 2004. [2022-02-20 23:44:44,266 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:44,269 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2838 states. Second operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,271 INFO L74 IsIncluded]: Start isIncluded. First operand 2838 states. Second operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,273 INFO L87 Difference]: Start difference. First operand 2838 states. Second operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,561 INFO L93 Difference]: Finished difference Result 2838 states and 3879 transitions. [2022-02-20 23:44:44,561 INFO L276 IsEmpty]: Start isEmpty. Operand 2838 states and 3879 transitions. [2022-02-20 23:44:44,564 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,564 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,567 INFO L74 IsIncluded]: Start isIncluded. First operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 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 2838 states. [2022-02-20 23:44:44,568 INFO L87 Difference]: Start difference. First operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 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 2838 states. [2022-02-20 23:44:44,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:44,814 INFO L93 Difference]: Finished difference Result 2838 states and 3879 transitions. [2022-02-20 23:44:44,814 INFO L276 IsEmpty]: Start isEmpty. Operand 2838 states and 3879 transitions. [2022-02-20 23:44:44,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:44,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:44,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:44:44,817 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:44:44,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2004 states, 1992 states have (on average 1.3995983935742973) internal successors, (2788), 2003 states have internal predecessors, (2788), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2004 states to 2004 states and 2788 transitions. [2022-02-20 23:44:44,921 INFO L78 Accepts]: Start accepts. Automaton has 2004 states and 2788 transitions. Word has length 59 [2022-02-20 23:44:44,921 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:44:44,922 INFO L470 AbstractCegarLoop]: Abstraction has 2004 states and 2788 transitions. [2022-02-20 23:44:44,922 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 6.142857142857143) internal successors, (43), 7 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:44,922 INFO L276 IsEmpty]: Start isEmpty. Operand 2004 states and 2788 transitions. [2022-02-20 23:44:44,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-20 23:44:44,923 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:44:44,923 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 6, 4, 4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:44:44,939 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-02-20 23:44:45,124 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-02-20 23:44:45,124 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:44:45,125 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:44:45,125 INFO L85 PathProgramCache]: Analyzing trace with hash -443713253, now seen corresponding path program 1 times [2022-02-20 23:44:45,125 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:44:45,125 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [536015577] [2022-02-20 23:44:45,125 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:45,125 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:44:45,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,210 INFO L290 TraceCheckUtils]: 0: Hoare triple {59207#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {59207#true} is VALID [2022-02-20 23:44:45,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {59207#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,211 INFO L290 TraceCheckUtils]: 2: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,211 INFO L290 TraceCheckUtils]: 3: Hoare triple {59207#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {59207#true} is VALID [2022-02-20 23:44:45,211 INFO L290 TraceCheckUtils]: 4: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,211 INFO L290 TraceCheckUtils]: 5: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,212 INFO L290 TraceCheckUtils]: 6: Hoare triple {59207#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,212 INFO L290 TraceCheckUtils]: 7: Hoare triple {59207#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume { :end_inline_push } true; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,213 INFO L290 TraceCheckUtils]: 10: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,214 INFO L290 TraceCheckUtils]: 11: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume main_#t~short11#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,214 INFO L290 TraceCheckUtils]: 12: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,215 INFO L290 TraceCheckUtils]: 14: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume push_#t~switch4#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,216 INFO L290 TraceCheckUtils]: 16: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,216 INFO L290 TraceCheckUtils]: 17: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume { :end_inline_push } true; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume main_#t~short11#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,217 INFO L290 TraceCheckUtils]: 20: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,218 INFO L290 TraceCheckUtils]: 21: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,218 INFO L290 TraceCheckUtils]: 22: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,219 INFO L290 TraceCheckUtils]: 23: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,219 INFO L290 TraceCheckUtils]: 24: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,219 INFO L290 TraceCheckUtils]: 25: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume { :end_inline_push } true; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,220 INFO L290 TraceCheckUtils]: 26: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,220 INFO L290 TraceCheckUtils]: 27: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume main_#t~short11#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,220 INFO L290 TraceCheckUtils]: 28: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,221 INFO L290 TraceCheckUtils]: 29: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,221 INFO L290 TraceCheckUtils]: 30: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,222 INFO L290 TraceCheckUtils]: 31: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,223 INFO L290 TraceCheckUtils]: 33: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,223 INFO L290 TraceCheckUtils]: 34: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume push_#t~switch4#1; {59209#(= (select |#valid| ~x1~0.base) 1)} is VALID [2022-02-20 23:44:45,223 INFO L290 TraceCheckUtils]: 35: Hoare triple {59209#(= (select |#valid| ~x1~0.base) 1)} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,224 INFO L290 TraceCheckUtils]: 36: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} assume { :end_inline_push } true; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,224 INFO L290 TraceCheckUtils]: 37: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,224 INFO L290 TraceCheckUtils]: 38: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} assume main_#t~short11#1; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,225 INFO L290 TraceCheckUtils]: 39: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,225 INFO L290 TraceCheckUtils]: 40: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59210#(= (select |#valid| ~S~0.base) 1)} is VALID [2022-02-20 23:44:45,225 INFO L290 TraceCheckUtils]: 41: Hoare triple {59210#(= (select |#valid| ~S~0.base) 1)} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,226 INFO L290 TraceCheckUtils]: 42: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume { :end_inline_pop } true; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,226 INFO L290 TraceCheckUtils]: 43: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,226 INFO L290 TraceCheckUtils]: 44: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume main_#t~short11#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,227 INFO L290 TraceCheckUtils]: 46: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,227 INFO L290 TraceCheckUtils]: 47: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,227 INFO L290 TraceCheckUtils]: 48: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume pop_#t~switch7#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,228 INFO L290 TraceCheckUtils]: 49: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,228 INFO L290 TraceCheckUtils]: 50: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume { :end_inline_pop } true; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,228 INFO L290 TraceCheckUtils]: 51: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,229 INFO L290 TraceCheckUtils]: 52: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume main_#t~short11#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,229 INFO L290 TraceCheckUtils]: 53: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,229 INFO L290 TraceCheckUtils]: 54: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,230 INFO L290 TraceCheckUtils]: 55: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,230 INFO L290 TraceCheckUtils]: 56: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,230 INFO L290 TraceCheckUtils]: 57: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume pop_#t~switch7#1; {59211#(= (select |#valid| ~t4~0.base) 1)} is VALID [2022-02-20 23:44:45,231 INFO L290 TraceCheckUtils]: 58: Hoare triple {59211#(= (select |#valid| ~t4~0.base) 1)} assume !(1 == #valid[~t4~0.base]); {59208#false} is VALID [2022-02-20 23:44:45,231 INFO L134 CoverageAnalysis]: Checked inductivity of 105 backedges. 27 proven. 49 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-02-20 23:44:45,231 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:44:45,231 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [536015577] [2022-02-20 23:44:45,231 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [536015577] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:44:45,231 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1203513719] [2022-02-20 23:44:45,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:44:45,232 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:44:45,232 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:44:45,239 INFO L229 MonitoredProcess]: Starting monitored process 10 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:44:45,240 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-20 23:44:45,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,344 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 8 conjunts are in the unsatisfiable core [2022-02-20 23:44:45,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:44:45,370 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:44:45,557 INFO L290 TraceCheckUtils]: 0: Hoare triple {59207#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {59207#true} is VALID [2022-02-20 23:44:45,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {59207#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 3: Hoare triple {59207#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 4: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 6: Hoare triple {59207#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 7: Hoare triple {59207#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 8: Hoare triple {59207#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 9: Hoare triple {59207#true} assume { :end_inline_push } true; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 10: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {59207#true} assume main_#t~short11#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 12: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {59207#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {59207#true} assume push_#t~switch4#1; {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 16: Hoare triple {59207#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {59207#true} is VALID [2022-02-20 23:44:45,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {59207#true} assume { :end_inline_push } true; {59207#true} is VALID [2022-02-20 23:44:45,559 INFO L290 TraceCheckUtils]: 18: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,559 INFO L290 TraceCheckUtils]: 19: Hoare triple {59207#true} assume main_#t~short11#1; {59207#true} is VALID [2022-02-20 23:44:45,559 INFO L290 TraceCheckUtils]: 20: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,559 INFO L290 TraceCheckUtils]: 21: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59278#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:44:45,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {59278#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59278#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:44:45,560 INFO L290 TraceCheckUtils]: 23: Hoare triple {59278#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59285#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} is VALID [2022-02-20 23:44:45,560 INFO L290 TraceCheckUtils]: 24: Hoare triple {59285#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,560 INFO L290 TraceCheckUtils]: 25: Hoare triple {59289#(<= ~pc1~0 4)} assume { :end_inline_push } true; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {59289#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,561 INFO L290 TraceCheckUtils]: 27: Hoare triple {59289#(<= ~pc1~0 4)} assume main_#t~short11#1; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,561 INFO L290 TraceCheckUtils]: 28: Hoare triple {59289#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,561 INFO L290 TraceCheckUtils]: 29: Hoare triple {59289#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:45,562 INFO L290 TraceCheckUtils]: 30: Hoare triple {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:45,562 INFO L290 TraceCheckUtils]: 31: Hoare triple {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:45,562 INFO L290 TraceCheckUtils]: 32: Hoare triple {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 33: Hoare triple {59305#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {59318#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 34: Hoare triple {59318#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 35: Hoare triple {59208#false} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 36: Hoare triple {59208#false} assume { :end_inline_push } true; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 37: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 38: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 39: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,563 INFO L290 TraceCheckUtils]: 40: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,567 INFO L290 TraceCheckUtils]: 41: Hoare triple {59208#false} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {59208#false} is VALID [2022-02-20 23:44:45,567 INFO L290 TraceCheckUtils]: 42: Hoare triple {59208#false} assume { :end_inline_pop } true; {59208#false} is VALID [2022-02-20 23:44:45,568 INFO L290 TraceCheckUtils]: 43: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,568 INFO L290 TraceCheckUtils]: 44: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,568 INFO L290 TraceCheckUtils]: 45: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,568 INFO L290 TraceCheckUtils]: 46: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,568 INFO L290 TraceCheckUtils]: 47: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,569 INFO L290 TraceCheckUtils]: 48: Hoare triple {59208#false} assume pop_#t~switch7#1; {59208#false} is VALID [2022-02-20 23:44:45,570 INFO L290 TraceCheckUtils]: 49: Hoare triple {59208#false} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {59208#false} is VALID [2022-02-20 23:44:45,570 INFO L290 TraceCheckUtils]: 50: Hoare triple {59208#false} assume { :end_inline_pop } true; {59208#false} is VALID [2022-02-20 23:44:45,571 INFO L290 TraceCheckUtils]: 51: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,572 INFO L290 TraceCheckUtils]: 54: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,572 INFO L290 TraceCheckUtils]: 55: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,572 INFO L290 TraceCheckUtils]: 56: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,572 INFO L290 TraceCheckUtils]: 57: Hoare triple {59208#false} assume pop_#t~switch7#1; {59208#false} is VALID [2022-02-20 23:44:45,573 INFO L290 TraceCheckUtils]: 58: Hoare triple {59208#false} assume !(1 == #valid[~t4~0.base]); {59208#false} is VALID [2022-02-20 23:44:45,573 INFO L134 CoverageAnalysis]: Checked inductivity of 105 backedges. 71 proven. 3 refuted. 0 times theorem prover too weak. 31 trivial. 0 not checked. [2022-02-20 23:44:45,573 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:44:45,730 INFO L290 TraceCheckUtils]: 58: Hoare triple {59208#false} assume !(1 == #valid[~t4~0.base]); {59208#false} is VALID [2022-02-20 23:44:45,730 INFO L290 TraceCheckUtils]: 57: Hoare triple {59208#false} assume pop_#t~switch7#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 56: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 55: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 54: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 53: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 52: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 51: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 50: Hoare triple {59208#false} assume { :end_inline_pop } true; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 49: Hoare triple {59208#false} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 48: Hoare triple {59208#false} assume pop_#t~switch7#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 47: Hoare triple {59208#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 46: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 45: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 44: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 43: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 42: Hoare triple {59208#false} assume { :end_inline_pop } true; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 41: Hoare triple {59208#false} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {59208#false} is VALID [2022-02-20 23:44:45,731 INFO L290 TraceCheckUtils]: 40: Hoare triple {59208#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 39: Hoare triple {59208#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 38: Hoare triple {59208#false} assume main_#t~short11#1; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 37: Hoare triple {59208#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 36: Hoare triple {59208#false} assume { :end_inline_push } true; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 35: Hoare triple {59208#false} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 34: Hoare triple {59318#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1; {59208#false} is VALID [2022-02-20 23:44:45,732 INFO L290 TraceCheckUtils]: 33: Hoare triple {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {59318#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:44:45,733 INFO L290 TraceCheckUtils]: 32: Hoare triple {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} is VALID [2022-02-20 23:44:45,733 INFO L290 TraceCheckUtils]: 31: Hoare triple {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} is VALID [2022-02-20 23:44:45,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} is VALID [2022-02-20 23:44:45,734 INFO L290 TraceCheckUtils]: 29: Hoare triple {59289#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59469#(not (= 5 |ULTIMATE.start_push_#t~post3#1|))} is VALID [2022-02-20 23:44:45,734 INFO L290 TraceCheckUtils]: 28: Hoare triple {59289#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,734 INFO L290 TraceCheckUtils]: 27: Hoare triple {59289#(<= ~pc1~0 4)} assume main_#t~short11#1; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,734 INFO L290 TraceCheckUtils]: 26: Hoare triple {59289#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,735 INFO L290 TraceCheckUtils]: 25: Hoare triple {59289#(<= ~pc1~0 4)} assume { :end_inline_push } true; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,735 INFO L290 TraceCheckUtils]: 24: Hoare triple {59285#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {59289#(<= ~pc1~0 4)} is VALID [2022-02-20 23:44:45,735 INFO L290 TraceCheckUtils]: 23: Hoare triple {59500#(or (<= ~pc1~0 4) (not (= |ULTIMATE.start_push_#t~post3#1| 3)))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {59285#(or (<= ~pc1~0 4) (not |ULTIMATE.start_push_#t~switch4#1|))} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 22: Hoare triple {59500#(or (<= ~pc1~0 4) (not (= |ULTIMATE.start_push_#t~post3#1| 3)))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59500#(or (<= ~pc1~0 4) (not (= |ULTIMATE.start_push_#t~post3#1| 3)))} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 21: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59500#(or (<= ~pc1~0 4) (not (= |ULTIMATE.start_push_#t~post3#1| 3)))} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 20: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 19: Hoare triple {59207#true} assume main_#t~short11#1; {59207#true} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 18: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 17: Hoare triple {59207#true} assume { :end_inline_push } true; {59207#true} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 16: Hoare triple {59207#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {59207#true} is VALID [2022-02-20 23:44:45,736 INFO L290 TraceCheckUtils]: 15: Hoare triple {59207#true} assume push_#t~switch4#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {59207#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 12: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 11: Hoare triple {59207#true} assume main_#t~short11#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 10: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {59207#true} assume { :end_inline_push } true; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {59207#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 7: Hoare triple {59207#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 6: Hoare triple {59207#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {59207#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 4: Hoare triple {59207#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 3: Hoare triple {59207#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {59207#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {59207#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {59207#true} is VALID [2022-02-20 23:44:45,737 INFO L290 TraceCheckUtils]: 0: Hoare triple {59207#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {59207#true} is VALID [2022-02-20 23:44:45,738 INFO L134 CoverageAnalysis]: Checked inductivity of 105 backedges. 71 proven. 3 refuted. 0 times theorem prover too weak. 31 trivial. 0 not checked. [2022-02-20 23:44:45,738 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1203513719] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:44:45,738 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:44:45,738 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 7, 7] total 12 [2022-02-20 23:44:45,738 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [782220246] [2022-02-20 23:44:45,738 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:44:45,738 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 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 59 [2022-02-20 23:44:45,739 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:44:45,739 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:45,787 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:45,788 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:44:45,788 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:44:45,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:44:45,788 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:44:45,788 INFO L87 Difference]: Start difference. First operand 2004 states and 2788 transitions. Second operand has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:50,969 INFO L93 Difference]: Finished difference Result 11354 states and 15589 transitions. [2022-02-20 23:44:50,969 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2022-02-20 23:44:50,969 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 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 59 [2022-02-20 23:44:50,969 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:44:50,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 975 transitions. [2022-02-20 23:44:50,973 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:50,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 975 transitions. [2022-02-20 23:44:50,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 44 states and 975 transitions. [2022-02-20 23:44:51,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 975 edges. 975 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:44:55,195 INFO L225 Difference]: With dead ends: 11354 [2022-02-20 23:44:55,195 INFO L226 Difference]: Without dead ends: 11354 [2022-02-20 23:44:55,196 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 50 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 726 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=631, Invalid=2021, Unknown=0, NotChecked=0, Total=2652 [2022-02-20 23:44:55,196 INFO L933 BasicCegarLoop]: 120 mSDtfsCounter, 992 mSDsluCounter, 754 mSDsCounter, 0 mSdLazyCounter, 886 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 992 SdHoareTripleChecker+Valid, 874 SdHoareTripleChecker+Invalid, 967 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 886 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:44:55,197 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [992 Valid, 874 Invalid, 967 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 886 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:44:55,201 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 11354 states. [2022-02-20 23:44:55,283 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 11354 to 5913. [2022-02-20 23:44:55,284 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:44:55,290 INFO L82 GeneralOperation]: Start isEquivalent. First operand 11354 states. Second operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:55,294 INFO L74 IsIncluded]: Start isIncluded. First operand 11354 states. Second operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:55,298 INFO L87 Difference]: Start difference. First operand 11354 states. Second operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:44:58,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:44:58,293 INFO L93 Difference]: Finished difference Result 11354 states and 15589 transitions. [2022-02-20 23:44:58,293 INFO L276 IsEmpty]: Start isEmpty. Operand 11354 states and 15589 transitions. [2022-02-20 23:44:58,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:44:58,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:44:58,305 INFO L74 IsIncluded]: Start isIncluded. First operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 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 11354 states. [2022-02-20 23:44:58,308 INFO L87 Difference]: Start difference. First operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 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 11354 states. [2022-02-20 23:45:01,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:01,563 INFO L93 Difference]: Finished difference Result 11354 states and 15589 transitions. [2022-02-20 23:45:01,563 INFO L276 IsEmpty]: Start isEmpty. Operand 11354 states and 15589 transitions. [2022-02-20 23:45:01,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:01,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:01,574 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:01,574 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:01,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5913 states, 5902 states have (on average 1.423246357167062) internal successors, (8400), 5912 states have internal predecessors, (8400), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:02,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5913 states to 5913 states and 8400 transitions. [2022-02-20 23:45:02,405 INFO L78 Accepts]: Start accepts. Automaton has 5913 states and 8400 transitions. Word has length 59 [2022-02-20 23:45:02,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:02,405 INFO L470 AbstractCegarLoop]: Abstraction has 5913 states and 8400 transitions. [2022-02-20 23:45:02,406 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 6.916666666666667) internal successors, (83), 12 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:02,406 INFO L276 IsEmpty]: Start isEmpty. Operand 5913 states and 8400 transitions. [2022-02-20 23:45:02,406 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 23:45:02,406 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:02,407 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 5, 5, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:02,424 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:02,610 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-02-20 23:45:02,611 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:45:02,611 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:02,611 INFO L85 PathProgramCache]: Analyzing trace with hash -791217300, now seen corresponding path program 1 times [2022-02-20 23:45:02,611 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:02,611 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1614470099] [2022-02-20 23:45:02,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:02,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:02,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:02,698 INFO L290 TraceCheckUtils]: 0: Hoare triple {99655#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {99655#true} is VALID [2022-02-20 23:45:02,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {99655#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {99655#true} is VALID [2022-02-20 23:45:02,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:02,699 INFO L290 TraceCheckUtils]: 3: Hoare triple {99655#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99655#true} is VALID [2022-02-20 23:45:02,699 INFO L290 TraceCheckUtils]: 4: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:02,699 INFO L290 TraceCheckUtils]: 5: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 6: Hoare triple {99655#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 7: Hoare triple {99655#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 8: Hoare triple {99655#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 9: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 10: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 11: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 12: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:02,700 INFO L290 TraceCheckUtils]: 13: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 14: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {99655#true} assume push_#t~switch4#1; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 16: Hoare triple {99655#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 17: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 18: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 19: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:02,701 INFO L290 TraceCheckUtils]: 20: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 21: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 22: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 23: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 24: Hoare triple {99655#true} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 25: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 26: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 27: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:02,702 INFO L290 TraceCheckUtils]: 28: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 29: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 30: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 32: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 33: Hoare triple {99655#true} assume push_#t~switch4#1; {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 34: Hoare triple {99655#true} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99655#true} is VALID [2022-02-20 23:45:02,703 INFO L290 TraceCheckUtils]: 35: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:02,704 INFO L290 TraceCheckUtils]: 36: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:02,704 INFO L290 TraceCheckUtils]: 37: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:02,704 INFO L290 TraceCheckUtils]: 38: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:02,704 INFO L290 TraceCheckUtils]: 39: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:45:02,705 INFO L290 TraceCheckUtils]: 40: Hoare triple {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:45:02,705 INFO L290 TraceCheckUtils]: 41: Hoare triple {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:45:02,705 INFO L290 TraceCheckUtils]: 42: Hoare triple {99657#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99658#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= ~pc1~0 5))} is VALID [2022-02-20 23:45:02,706 INFO L290 TraceCheckUtils]: 43: Hoare triple {99658#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= ~pc1~0 5))} assume push_#t~switch4#1; {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,706 INFO L290 TraceCheckUtils]: 44: Hoare triple {99659#(<= ~pc1~0 5)} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,706 INFO L290 TraceCheckUtils]: 45: Hoare triple {99659#(<= ~pc1~0 5)} assume { :end_inline_push } true; {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,707 INFO L290 TraceCheckUtils]: 46: Hoare triple {99659#(<= ~pc1~0 5)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,707 INFO L290 TraceCheckUtils]: 47: Hoare triple {99659#(<= ~pc1~0 5)} assume main_#t~short11#1; {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,707 INFO L290 TraceCheckUtils]: 48: Hoare triple {99659#(<= ~pc1~0 5)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99659#(<= ~pc1~0 5)} is VALID [2022-02-20 23:45:02,708 INFO L290 TraceCheckUtils]: 49: Hoare triple {99659#(<= ~pc1~0 5)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:45:02,708 INFO L290 TraceCheckUtils]: 50: Hoare triple {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:45:02,708 INFO L290 TraceCheckUtils]: 51: Hoare triple {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:45:02,709 INFO L290 TraceCheckUtils]: 52: Hoare triple {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:45:02,709 INFO L290 TraceCheckUtils]: 53: Hoare triple {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} is VALID [2022-02-20 23:45:02,709 INFO L290 TraceCheckUtils]: 54: Hoare triple {99660#(<= |ULTIMATE.start_push_#t~post3#1| 5)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 55: Hoare triple {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1;~pc1~0 := 1; {99656#false} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 56: Hoare triple {99656#false} assume { :end_inline_push } true; {99656#false} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 57: Hoare triple {99656#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99656#false} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 58: Hoare triple {99656#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99656#false} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 59: Hoare triple {99656#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {99656#false} is VALID [2022-02-20 23:45:02,710 INFO L290 TraceCheckUtils]: 60: Hoare triple {99656#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {99656#false} is VALID [2022-02-20 23:45:02,711 INFO L290 TraceCheckUtils]: 61: Hoare triple {99656#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {99656#false} is VALID [2022-02-20 23:45:02,711 INFO L290 TraceCheckUtils]: 62: Hoare triple {99656#false} assume !(#valid == main_old_#valid#1); {99656#false} is VALID [2022-02-20 23:45:02,711 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 68 proven. 4 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2022-02-20 23:45:02,711 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:02,711 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1614470099] [2022-02-20 23:45:02,711 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1614470099] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:02,712 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1973042298] [2022-02-20 23:45:02,712 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:02,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:02,712 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:02,716 INFO L229 MonitoredProcess]: Starting monitored process 11 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:45:02,719 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-02-20 23:45:02,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:02,810 INFO L263 TraceCheckSpWp]: Trace formula consists of 292 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 23:45:02,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:02,826 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:03,098 INFO L290 TraceCheckUtils]: 0: Hoare triple {99655#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {99655#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 3: Hoare triple {99655#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 4: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 5: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 6: Hoare triple {99655#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 7: Hoare triple {99655#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 8: Hoare triple {99655#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 10: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 12: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,099 INFO L290 TraceCheckUtils]: 13: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 14: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 15: Hoare triple {99655#true} assume push_#t~switch4#1; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 16: Hoare triple {99655#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 19: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:03,100 INFO L290 TraceCheckUtils]: 20: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99728#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} is VALID [2022-02-20 23:45:03,101 INFO L290 TraceCheckUtils]: 22: Hoare triple {99728#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99728#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} is VALID [2022-02-20 23:45:03,101 INFO L290 TraceCheckUtils]: 23: Hoare triple {99728#(<= (+ |ULTIMATE.start_push_#t~post3#1| 1) ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99735#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:45:03,102 INFO L290 TraceCheckUtils]: 24: Hoare triple {99735#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,102 INFO L290 TraceCheckUtils]: 25: Hoare triple {99739#(<= 4 ~pc1~0)} assume { :end_inline_push } true; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,103 INFO L290 TraceCheckUtils]: 26: Hoare triple {99739#(<= 4 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {99739#(<= 4 ~pc1~0)} assume main_#t~short11#1; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,103 INFO L290 TraceCheckUtils]: 28: Hoare triple {99739#(<= 4 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,104 INFO L290 TraceCheckUtils]: 29: Hoare triple {99739#(<= 4 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,105 INFO L290 TraceCheckUtils]: 31: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,105 INFO L290 TraceCheckUtils]: 32: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,105 INFO L290 TraceCheckUtils]: 33: Hoare triple {99755#(<= 5 ~pc1~0)} assume push_#t~switch4#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {99755#(<= 5 ~pc1~0)} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {99755#(<= 5 ~pc1~0)} assume { :end_inline_push } true; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,106 INFO L290 TraceCheckUtils]: 36: Hoare triple {99755#(<= 5 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,106 INFO L290 TraceCheckUtils]: 37: Hoare triple {99755#(<= 5 ~pc1~0)} assume main_#t~short11#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,107 INFO L290 TraceCheckUtils]: 38: Hoare triple {99755#(<= 5 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,107 INFO L290 TraceCheckUtils]: 39: Hoare triple {99755#(<= 5 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} is VALID [2022-02-20 23:45:03,107 INFO L290 TraceCheckUtils]: 40: Hoare triple {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 41: Hoare triple {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 42: Hoare triple {99786#(<= 5 |ULTIMATE.start_push_#t~post3#1|)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 43: Hoare triple {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1; {99656#false} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 44: Hoare triple {99656#false} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99656#false} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 45: Hoare triple {99656#false} assume { :end_inline_push } true; {99656#false} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 46: Hoare triple {99656#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99656#false} is VALID [2022-02-20 23:45:03,108 INFO L290 TraceCheckUtils]: 47: Hoare triple {99656#false} assume main_#t~short11#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 48: Hoare triple {99656#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 49: Hoare triple {99656#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 50: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 51: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 52: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 53: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 54: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 55: Hoare triple {99656#false} assume push_#t~switch4#1;~pc1~0 := 1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 56: Hoare triple {99656#false} assume { :end_inline_push } true; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 57: Hoare triple {99656#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 58: Hoare triple {99656#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 59: Hoare triple {99656#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 60: Hoare triple {99656#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 61: Hoare triple {99656#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {99656#false} is VALID [2022-02-20 23:45:03,109 INFO L290 TraceCheckUtils]: 62: Hoare triple {99656#false} assume !(#valid == main_old_#valid#1); {99656#false} is VALID [2022-02-20 23:45:03,110 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 101 proven. 9 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-02-20 23:45:03,110 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 62: Hoare triple {99656#false} assume !(#valid == main_old_#valid#1); {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 61: Hoare triple {99656#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 60: Hoare triple {99656#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 59: Hoare triple {99656#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 58: Hoare triple {99656#false} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 57: Hoare triple {99656#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 56: Hoare triple {99656#false} assume { :end_inline_push } true; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 55: Hoare triple {99656#false} assume push_#t~switch4#1;~pc1~0 := 1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 54: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 53: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 52: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,315 INFO L290 TraceCheckUtils]: 51: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 50: Hoare triple {99656#false} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 49: Hoare triple {99656#false} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 48: Hoare triple {99656#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 47: Hoare triple {99656#false} assume main_#t~short11#1; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 46: Hoare triple {99656#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 45: Hoare triple {99656#false} assume { :end_inline_push } true; {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 44: Hoare triple {99656#false} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99656#false} is VALID [2022-02-20 23:45:03,316 INFO L290 TraceCheckUtils]: 43: Hoare triple {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1; {99656#false} is VALID [2022-02-20 23:45:03,317 INFO L290 TraceCheckUtils]: 42: Hoare triple {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99661#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:45:03,317 INFO L290 TraceCheckUtils]: 41: Hoare triple {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} is VALID [2022-02-20 23:45:03,317 INFO L290 TraceCheckUtils]: 40: Hoare triple {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} is VALID [2022-02-20 23:45:03,318 INFO L290 TraceCheckUtils]: 39: Hoare triple {99755#(<= 5 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99916#(not (= |ULTIMATE.start_push_#t~post3#1| 4))} is VALID [2022-02-20 23:45:03,318 INFO L290 TraceCheckUtils]: 38: Hoare triple {99755#(<= 5 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,318 INFO L290 TraceCheckUtils]: 37: Hoare triple {99755#(<= 5 ~pc1~0)} assume main_#t~short11#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,318 INFO L290 TraceCheckUtils]: 36: Hoare triple {99755#(<= 5 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,319 INFO L290 TraceCheckUtils]: 35: Hoare triple {99755#(<= 5 ~pc1~0)} assume { :end_inline_push } true; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,319 INFO L290 TraceCheckUtils]: 34: Hoare triple {99755#(<= 5 ~pc1~0)} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,319 INFO L290 TraceCheckUtils]: 33: Hoare triple {99755#(<= 5 ~pc1~0)} assume push_#t~switch4#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,319 INFO L290 TraceCheckUtils]: 32: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,320 INFO L290 TraceCheckUtils]: 31: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {99755#(<= 5 ~pc1~0)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,322 INFO L290 TraceCheckUtils]: 29: Hoare triple {99739#(<= 4 ~pc1~0)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99755#(<= 5 ~pc1~0)} is VALID [2022-02-20 23:45:03,322 INFO L290 TraceCheckUtils]: 28: Hoare triple {99739#(<= 4 ~pc1~0)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,331 INFO L290 TraceCheckUtils]: 27: Hoare triple {99739#(<= 4 ~pc1~0)} assume main_#t~short11#1; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,331 INFO L290 TraceCheckUtils]: 26: Hoare triple {99739#(<= 4 ~pc1~0)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {99739#(<= 4 ~pc1~0)} assume { :end_inline_push } true; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,332 INFO L290 TraceCheckUtils]: 24: Hoare triple {99735#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {99739#(<= 4 ~pc1~0)} is VALID [2022-02-20 23:45:03,332 INFO L290 TraceCheckUtils]: 23: Hoare triple {99974#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {99735#(or (not |ULTIMATE.start_push_#t~switch4#1|) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 22: Hoare triple {99974#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99974#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 21: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99974#(or (not (= |ULTIMATE.start_push_#t~post3#1| 3)) (<= 4 ~pc1~0))} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 20: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 19: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 18: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 17: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:03,333 INFO L290 TraceCheckUtils]: 16: Hoare triple {99655#true} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 15: Hoare triple {99655#true} assume push_#t~switch4#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 14: Hoare triple {99655#true} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 13: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 12: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 11: Hoare triple {99655#true} assume main_#t~short11#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 10: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 9: Hoare triple {99655#true} assume { :end_inline_push } true; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 8: Hoare triple {99655#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 7: Hoare triple {99655#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 6: Hoare triple {99655#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {99655#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 4: Hoare triple {99655#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 3: Hoare triple {99655#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {99655#true} is VALID [2022-02-20 23:45:03,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {99655#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {99655#true} is VALID [2022-02-20 23:45:03,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {99655#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {99655#true} is VALID [2022-02-20 23:45:03,335 INFO L290 TraceCheckUtils]: 0: Hoare triple {99655#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {99655#true} is VALID [2022-02-20 23:45:03,336 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 103 proven. 7 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-02-20 23:45:03,336 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1973042298] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:03,336 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:45:03,336 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 8] total 14 [2022-02-20 23:45:03,336 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [147947585] [2022-02-20 23:45:03,336 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:03,337 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 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 63 [2022-02-20 23:45:03,337 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:03,337 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:03,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:03,407 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:45:03,407 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:03,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:45:03,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:45:03,408 INFO L87 Difference]: Start difference. First operand 5913 states and 8400 transitions. Second operand has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:09,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:09,572 INFO L93 Difference]: Finished difference Result 13135 states and 18181 transitions. [2022-02-20 23:45:09,572 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-02-20 23:45:09,572 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 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 63 [2022-02-20 23:45:09,572 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:09,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:09,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 645 transitions. [2022-02-20 23:45:09,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:09,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 645 transitions. [2022-02-20 23:45:09,577 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 645 transitions. [2022-02-20 23:45:10,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 645 edges. 645 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:14,997 INFO L225 Difference]: With dead ends: 13135 [2022-02-20 23:45:14,998 INFO L226 Difference]: Without dead ends: 13135 [2022-02-20 23:45:14,998 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 175 GetRequests, 135 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 394 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=407, Invalid=1233, Unknown=0, NotChecked=0, Total=1640 [2022-02-20 23:45:14,998 INFO L933 BasicCegarLoop]: 194 mSDtfsCounter, 1161 mSDsluCounter, 1324 mSDsCounter, 0 mSdLazyCounter, 235 mSolverCounterSat, 105 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1161 SdHoareTripleChecker+Valid, 1518 SdHoareTripleChecker+Invalid, 340 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 105 IncrementalHoareTripleChecker+Valid, 235 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:14,999 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1161 Valid, 1518 Invalid, 340 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [105 Valid, 235 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:15,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 13135 states. [2022-02-20 23:45:15,105 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 13135 to 5663. [2022-02-20 23:45:15,106 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:15,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 13135 states. Second operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:15,115 INFO L74 IsIncluded]: Start isIncluded. First operand 13135 states. Second operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:15,119 INFO L87 Difference]: Start difference. First operand 13135 states. Second operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:19,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:19,894 INFO L93 Difference]: Finished difference Result 13135 states and 18181 transitions. [2022-02-20 23:45:19,895 INFO L276 IsEmpty]: Start isEmpty. Operand 13135 states and 18181 transitions. [2022-02-20 23:45:19,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:19,907 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:19,911 INFO L74 IsIncluded]: Start isIncluded. First operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 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 13135 states. [2022-02-20 23:45:19,913 INFO L87 Difference]: Start difference. First operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 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 13135 states. [2022-02-20 23:45:24,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:24,268 INFO L93 Difference]: Finished difference Result 13135 states and 18181 transitions. [2022-02-20 23:45:24,268 INFO L276 IsEmpty]: Start isEmpty. Operand 13135 states and 18181 transitions. [2022-02-20 23:45:24,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:24,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:24,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:24,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:24,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5663 states, 5652 states have (on average 1.3982661004953998) internal successors, (7903), 5662 states have internal predecessors, (7903), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:25,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5663 states to 5663 states and 7903 transitions. [2022-02-20 23:45:25,081 INFO L78 Accepts]: Start accepts. Automaton has 5663 states and 7903 transitions. Word has length 63 [2022-02-20 23:45:25,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:25,081 INFO L470 AbstractCegarLoop]: Abstraction has 5663 states and 7903 transitions. [2022-02-20 23:45:25,081 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.928571428571429) internal successors, (83), 14 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:25,081 INFO L276 IsEmpty]: Start isEmpty. Operand 5663 states and 7903 transitions. [2022-02-20 23:45:25,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 23:45:25,082 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:25,082 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 6, 4, 4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:25,098 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:25,282 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:25,282 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:45:25,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:25,283 INFO L85 PathProgramCache]: Analyzing trace with hash 767429099, now seen corresponding path program 1 times [2022-02-20 23:45:25,283 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:25,283 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [912177194] [2022-02-20 23:45:25,283 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:25,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:25,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,381 INFO L290 TraceCheckUtils]: 0: Hoare triple {145182#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {145182#true} is VALID [2022-02-20 23:45:25,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {145182#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {145182#true} is VALID [2022-02-20 23:45:25,381 INFO L290 TraceCheckUtils]: 2: Hoare triple {145182#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 3: Hoare triple {145182#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 4: Hoare triple {145182#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 5: Hoare triple {145182#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 6: Hoare triple {145182#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 7: Hoare triple {145182#true} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 8: Hoare triple {145182#true} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {145182#true} is VALID [2022-02-20 23:45:25,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {145182#true} assume { :end_inline_push } true; {145182#true} is VALID [2022-02-20 23:45:25,383 INFO L290 TraceCheckUtils]: 10: Hoare triple {145182#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145182#true} is VALID [2022-02-20 23:45:25,383 INFO L290 TraceCheckUtils]: 11: Hoare triple {145182#true} assume main_#t~short11#1; {145182#true} is VALID [2022-02-20 23:45:25,383 INFO L290 TraceCheckUtils]: 12: Hoare triple {145182#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145182#true} is VALID [2022-02-20 23:45:25,383 INFO L290 TraceCheckUtils]: 13: Hoare triple {145182#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145184#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} is VALID [2022-02-20 23:45:25,384 INFO L290 TraceCheckUtils]: 14: Hoare triple {145184#(<= ~pc1~0 (+ |ULTIMATE.start_push_#t~post3#1| 1))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145185#(or (<= ~pc1~0 3) (not |ULTIMATE.start_push_#t~switch4#1|))} is VALID [2022-02-20 23:45:25,384 INFO L290 TraceCheckUtils]: 15: Hoare triple {145185#(or (<= ~pc1~0 3) (not |ULTIMATE.start_push_#t~switch4#1|))} assume push_#t~switch4#1; {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,385 INFO L290 TraceCheckUtils]: 16: Hoare triple {145186#(<= ~pc1~0 3)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,385 INFO L290 TraceCheckUtils]: 17: Hoare triple {145186#(<= ~pc1~0 3)} assume { :end_inline_push } true; {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,385 INFO L290 TraceCheckUtils]: 18: Hoare triple {145186#(<= ~pc1~0 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,386 INFO L290 TraceCheckUtils]: 19: Hoare triple {145186#(<= ~pc1~0 3)} assume main_#t~short11#1; {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,386 INFO L290 TraceCheckUtils]: 20: Hoare triple {145186#(<= ~pc1~0 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145186#(<= ~pc1~0 3)} is VALID [2022-02-20 23:45:25,386 INFO L290 TraceCheckUtils]: 21: Hoare triple {145186#(<= ~pc1~0 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,387 INFO L290 TraceCheckUtils]: 22: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,387 INFO L290 TraceCheckUtils]: 23: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,387 INFO L290 TraceCheckUtils]: 24: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,388 INFO L290 TraceCheckUtils]: 25: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,388 INFO L290 TraceCheckUtils]: 26: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,388 INFO L290 TraceCheckUtils]: 27: Hoare triple {145187#(<= ~pc1~0 4)} assume !push_#t~switch4#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,389 INFO L290 TraceCheckUtils]: 28: Hoare triple {145187#(<= ~pc1~0 4)} havoc push_#t~post3#1;havoc push_#t~switch4#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,389 INFO L290 TraceCheckUtils]: 29: Hoare triple {145187#(<= ~pc1~0 4)} assume { :end_inline_push } true; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,389 INFO L290 TraceCheckUtils]: 30: Hoare triple {145187#(<= ~pc1~0 4)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,390 INFO L290 TraceCheckUtils]: 31: Hoare triple {145187#(<= ~pc1~0 4)} assume main_#t~short11#1; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,390 INFO L290 TraceCheckUtils]: 32: Hoare triple {145187#(<= ~pc1~0 4)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145187#(<= ~pc1~0 4)} is VALID [2022-02-20 23:45:25,390 INFO L290 TraceCheckUtils]: 33: Hoare triple {145187#(<= ~pc1~0 4)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,391 INFO L290 TraceCheckUtils]: 34: Hoare triple {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,391 INFO L290 TraceCheckUtils]: 35: Hoare triple {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,391 INFO L290 TraceCheckUtils]: 36: Hoare triple {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,392 INFO L290 TraceCheckUtils]: 37: Hoare triple {145188#(<= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145189#(not |ULTIMATE.start_push_#t~switch4#1|)} is VALID [2022-02-20 23:45:25,392 INFO L290 TraceCheckUtils]: 38: Hoare triple {145189#(not |ULTIMATE.start_push_#t~switch4#1|)} assume push_#t~switch4#1; {145183#false} is VALID [2022-02-20 23:45:25,392 INFO L290 TraceCheckUtils]: 39: Hoare triple {145183#false} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,392 INFO L290 TraceCheckUtils]: 40: Hoare triple {145183#false} assume { :end_inline_push } true; {145183#false} is VALID [2022-02-20 23:45:25,392 INFO L290 TraceCheckUtils]: 41: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 42: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 45: Hoare triple {145183#false} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 46: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 47: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,393 INFO L290 TraceCheckUtils]: 48: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 49: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 50: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 51: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 52: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 53: Hoare triple {145183#false} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 54: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 55: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,394 INFO L290 TraceCheckUtils]: 56: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 57: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 58: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 59: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 60: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 61: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,395 INFO L290 TraceCheckUtils]: 62: Hoare triple {145183#false} assume !(4 + (4 + ~t4~0.offset) <= #length[~t4~0.base] && 0 <= 4 + ~t4~0.offset); {145183#false} is VALID [2022-02-20 23:45:25,396 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 72 proven. 14 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-02-20 23:45:25,396 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:25,396 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [912177194] [2022-02-20 23:45:25,396 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [912177194] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:25,396 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1507206463] [2022-02-20 23:45:25,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:25,396 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:25,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:25,400 INFO L229 MonitoredProcess]: Starting monitored process 12 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:45:25,403 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-02-20 23:45:25,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,485 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:45:25,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:25,498 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:45:25,678 INFO L290 TraceCheckUtils]: 0: Hoare triple {145182#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,678 INFO L290 TraceCheckUtils]: 1: Hoare triple {145193#(= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {145193#(= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,679 INFO L290 TraceCheckUtils]: 3: Hoare triple {145193#(= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,679 INFO L290 TraceCheckUtils]: 4: Hoare triple {145193#(= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,680 INFO L290 TraceCheckUtils]: 5: Hoare triple {145193#(= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,680 INFO L290 TraceCheckUtils]: 6: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,680 INFO L290 TraceCheckUtils]: 7: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,680 INFO L290 TraceCheckUtils]: 8: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume { :end_inline_push } true; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,681 INFO L290 TraceCheckUtils]: 10: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,681 INFO L290 TraceCheckUtils]: 11: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume main_#t~short11#1; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,682 INFO L290 TraceCheckUtils]: 13: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,682 INFO L290 TraceCheckUtils]: 14: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,683 INFO L290 TraceCheckUtils]: 15: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume push_#t~switch4#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,683 INFO L290 TraceCheckUtils]: 16: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,683 INFO L290 TraceCheckUtils]: 17: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume { :end_inline_push } true; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,684 INFO L290 TraceCheckUtils]: 18: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,684 INFO L290 TraceCheckUtils]: 19: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume main_#t~short11#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,685 INFO L290 TraceCheckUtils]: 21: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,685 INFO L290 TraceCheckUtils]: 22: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,685 INFO L290 TraceCheckUtils]: 23: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,686 INFO L290 TraceCheckUtils]: 24: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,686 INFO L290 TraceCheckUtils]: 25: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,687 INFO L290 TraceCheckUtils]: 27: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,687 INFO L290 TraceCheckUtils]: 28: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} havoc push_#t~post3#1;havoc push_#t~switch4#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,687 INFO L290 TraceCheckUtils]: 29: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume { :end_inline_push } true; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume main_#t~short11#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,688 INFO L290 TraceCheckUtils]: 32: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,689 INFO L290 TraceCheckUtils]: 33: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,689 INFO L290 TraceCheckUtils]: 34: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,689 INFO L290 TraceCheckUtils]: 35: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 36: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145306#|ULTIMATE.start_push_#t~switch4#1|} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 37: Hoare triple {145306#|ULTIMATE.start_push_#t~switch4#1|} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 38: Hoare triple {145183#false} assume push_#t~switch4#1; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 39: Hoare triple {145183#false} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 40: Hoare triple {145183#false} assume { :end_inline_push } true; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 41: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 42: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 43: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 44: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 45: Hoare triple {145183#false} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,690 INFO L290 TraceCheckUtils]: 46: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 47: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 48: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 49: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 50: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 51: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 52: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 53: Hoare triple {145183#false} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 54: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 55: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 56: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 57: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 58: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 59: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,691 INFO L290 TraceCheckUtils]: 60: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,692 INFO L290 TraceCheckUtils]: 61: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,692 INFO L290 TraceCheckUtils]: 62: Hoare triple {145183#false} assume !(4 + (4 + ~t4~0.offset) <= #length[~t4~0.base] && 0 <= 4 + ~t4~0.offset); {145183#false} is VALID [2022-02-20 23:45:25,692 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 52 proven. 38 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-02-20 23:45:25,692 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:45:25,852 INFO L290 TraceCheckUtils]: 62: Hoare triple {145183#false} assume !(4 + (4 + ~t4~0.offset) <= #length[~t4~0.base] && 0 <= 4 + ~t4~0.offset); {145183#false} is VALID [2022-02-20 23:45:25,852 INFO L290 TraceCheckUtils]: 61: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,852 INFO L290 TraceCheckUtils]: 60: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 3 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 59: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 58: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 57: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 56: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 55: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 54: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 53: Hoare triple {145183#false} assume !(~t4~0.base == 0 && ~t4~0.offset == 0); {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 52: Hoare triple {145183#false} assume pop_#t~switch7#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 51: Hoare triple {145183#false} assume !pop_#t~switch7#1;pop_#t~switch7#1 := pop_#t~switch7#1 || 2 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 50: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 49: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 48: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 47: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 46: Hoare triple {145183#false} assume { :end_inline_pop } true; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 45: Hoare triple {145183#false} assume pop_#t~switch7#1;~t4~0.base, ~t4~0.offset := ~S~0.base, ~S~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 44: Hoare triple {145183#false} assume !(0 != main_#t~nondet12#1);havoc main_#t~nondet12#1;assume { :begin_inline_pop } true;havoc pop_#t~post6#1, pop_#t~switch7#1, pop_#t~mem8#1.base, pop_#t~mem8#1.offset, pop_#t~mem9#1;pop_#t~post6#1 := ~pc4~0;~pc4~0 := 1 + pop_#t~post6#1;pop_#t~switch7#1 := 1 == pop_#t~post6#1; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 43: Hoare triple {145183#false} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145183#false} is VALID [2022-02-20 23:45:25,853 INFO L290 TraceCheckUtils]: 42: Hoare triple {145183#false} assume main_#t~short11#1; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 41: Hoare triple {145183#false} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 40: Hoare triple {145183#false} assume { :end_inline_push } true; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 39: Hoare triple {145183#false} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 38: Hoare triple {145183#false} assume push_#t~switch4#1; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 37: Hoare triple {145306#|ULTIMATE.start_push_#t~switch4#1|} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145183#false} is VALID [2022-02-20 23:45:25,854 INFO L290 TraceCheckUtils]: 36: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145306#|ULTIMATE.start_push_#t~switch4#1|} is VALID [2022-02-20 23:45:25,855 INFO L290 TraceCheckUtils]: 35: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,855 INFO L290 TraceCheckUtils]: 34: Hoare triple {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145296#(= |ULTIMATE.start_push_#t~post3#1| 4)} is VALID [2022-02-20 23:45:25,856 INFO L290 TraceCheckUtils]: 32: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,856 INFO L290 TraceCheckUtils]: 31: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume main_#t~short11#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume { :end_inline_push } true; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,857 INFO L290 TraceCheckUtils]: 28: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} havoc push_#t~post3#1;havoc push_#t~switch4#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,857 INFO L290 TraceCheckUtils]: 27: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,858 INFO L290 TraceCheckUtils]: 26: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,858 INFO L290 TraceCheckUtils]: 25: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,858 INFO L290 TraceCheckUtils]: 24: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,859 INFO L290 TraceCheckUtils]: 23: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,859 INFO L290 TraceCheckUtils]: 22: Hoare triple {145259#(= (+ (- 1) ~pc1~0) 3)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,860 INFO L290 TraceCheckUtils]: 21: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145259#(= (+ (- 1) ~pc1~0) 3)} is VALID [2022-02-20 23:45:25,860 INFO L290 TraceCheckUtils]: 20: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume main_#t~short11#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,861 INFO L290 TraceCheckUtils]: 18: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume { :end_inline_push } true; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,861 INFO L290 TraceCheckUtils]: 16: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,862 INFO L290 TraceCheckUtils]: 15: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume push_#t~switch4#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {145234#(= (+ (- 2) ~pc1~0) 1)} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145234#(= (+ (- 2) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,863 INFO L290 TraceCheckUtils]: 12: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,863 INFO L290 TraceCheckUtils]: 11: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume main_#t~short11#1; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,863 INFO L290 TraceCheckUtils]: 10: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,863 INFO L290 TraceCheckUtils]: 9: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume { :end_inline_push } true; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,864 INFO L290 TraceCheckUtils]: 6: Hoare triple {145209#(= (+ (- 1) ~pc1~0) 1)} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {145193#(= ~pc1~0 1)} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {145209#(= (+ (- 1) ~pc1~0) 1)} is VALID [2022-02-20 23:45:25,865 INFO L290 TraceCheckUtils]: 4: Hoare triple {145193#(= ~pc1~0 1)} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,865 INFO L290 TraceCheckUtils]: 3: Hoare triple {145193#(= ~pc1~0 1)} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {145193#(= ~pc1~0 1)} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,866 INFO L290 TraceCheckUtils]: 1: Hoare triple {145193#(= ~pc1~0 1)} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,866 INFO L290 TraceCheckUtils]: 0: Hoare triple {145182#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {145193#(= ~pc1~0 1)} is VALID [2022-02-20 23:45:25,866 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 52 proven. 38 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-02-20 23:45:25,866 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1507206463] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:45:25,866 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:45:25,866 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 14 [2022-02-20 23:45:25,867 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [540849925] [2022-02-20 23:45:25,867 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:45:25,867 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 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 63 [2022-02-20 23:45:25,867 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:45:25,867 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:25,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:25,922 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:45:25,922 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:45:25,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:45:25,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=143, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:45:25,922 INFO L87 Difference]: Start difference. First operand 5663 states and 7903 transitions. Second operand has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:27,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:27,675 INFO L93 Difference]: Finished difference Result 4879 states and 6428 transitions. [2022-02-20 23:45:27,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:45:27,675 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 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 63 [2022-02-20 23:45:27,675 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:45:27,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:27,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 403 transitions. [2022-02-20 23:45:27,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:27,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 403 transitions. [2022-02-20 23:45:27,678 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 403 transitions. [2022-02-20 23:45:27,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:45:28,644 INFO L225 Difference]: With dead ends: 4879 [2022-02-20 23:45:28,644 INFO L226 Difference]: Without dead ends: 4879 [2022-02-20 23:45:28,645 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 129 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 172 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=154, Invalid=602, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:45:28,645 INFO L933 BasicCegarLoop]: 237 mSDtfsCounter, 837 mSDsluCounter, 1384 mSDsCounter, 0 mSdLazyCounter, 207 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 837 SdHoareTripleChecker+Valid, 1621 SdHoareTripleChecker+Invalid, 257 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 207 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:45:28,645 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [837 Valid, 1621 Invalid, 257 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 207 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:45:28,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4879 states. [2022-02-20 23:45:28,677 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4879 to 3657. [2022-02-20 23:45:28,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:45:28,681 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4879 states. Second operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:28,683 INFO L74 IsIncluded]: Start isIncluded. First operand 4879 states. Second operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:28,686 INFO L87 Difference]: Start difference. First operand 4879 states. Second operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:29,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:29,284 INFO L93 Difference]: Finished difference Result 4879 states and 6428 transitions. [2022-02-20 23:45:29,285 INFO L276 IsEmpty]: Start isEmpty. Operand 4879 states and 6428 transitions. [2022-02-20 23:45:29,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:29,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:29,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 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 4879 states. [2022-02-20 23:45:29,291 INFO L87 Difference]: Start difference. First operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 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 4879 states. [2022-02-20 23:45:29,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:45:29,867 INFO L93 Difference]: Finished difference Result 4879 states and 6428 transitions. [2022-02-20 23:45:29,867 INFO L276 IsEmpty]: Start isEmpty. Operand 4879 states and 6428 transitions. [2022-02-20 23:45:29,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:45:29,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:45:29,870 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:45:29,870 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:45:29,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3657 states, 3646 states have (on average 1.3167855183763029) internal successors, (4801), 3656 states have internal predecessors, (4801), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:30,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3657 states to 3657 states and 4801 transitions. [2022-02-20 23:45:30,220 INFO L78 Accepts]: Start accepts. Automaton has 3657 states and 4801 transitions. Word has length 63 [2022-02-20 23:45:30,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:45:30,220 INFO L470 AbstractCegarLoop]: Abstraction has 3657 states and 4801 transitions. [2022-02-20 23:45:30,221 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 6.428571428571429) internal successors, (90), 14 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:45:30,221 INFO L276 IsEmpty]: Start isEmpty. Operand 3657 states and 4801 transitions. [2022-02-20 23:45:30,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-02-20 23:45:30,221 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:45:30,221 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 5, 5, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:45:30,237 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:45:30,422 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:30,422 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr19ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 16 more)] === [2022-02-20 23:45:30,422 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:45:30,422 INFO L85 PathProgramCache]: Analyzing trace with hash 965172541, now seen corresponding path program 1 times [2022-02-20 23:45:30,422 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:45:30,422 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2143839499] [2022-02-20 23:45:30,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:30,423 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:45:30,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:45:30,470 INFO L290 TraceCheckUtils]: 0: Hoare triple {163903#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(15, 2);~S~0.base, ~S~0.offset := 0, 0;~pc1~0 := 1;~pc4~0 := 1;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~garbage~0.base, ~garbage~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;~res4~0 := 0; {163903#true} is VALID [2022-02-20 23:45:30,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {163903#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet12#1, main_#t~nondet10#1, main_#t~short11#1, main_#t~mem13#1.base, main_#t~mem13#1.offset, main_~next~0#1.base, main_~next~0#1.offset; {163903#true} is VALID [2022-02-20 23:45:30,471 INFO L290 TraceCheckUtils]: 2: Hoare triple {163903#true} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163903#true} is VALID [2022-02-20 23:45:30,471 INFO L290 TraceCheckUtils]: 3: Hoare triple {163903#true} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {163903#true} is VALID [2022-02-20 23:45:30,471 INFO L290 TraceCheckUtils]: 4: Hoare triple {163903#true} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163903#true} is VALID [2022-02-20 23:45:30,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {163903#true} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163903#true} is VALID [2022-02-20 23:45:30,471 INFO L290 TraceCheckUtils]: 6: Hoare triple {163903#true} assume push_#t~switch4#1;call push_#t~malloc5#1.base, push_#t~malloc5#1.offset := #Ultimate.allocOnHeap(8);~x1~0.base, ~x1~0.offset := push_#t~malloc5#1.base, push_#t~malloc5#1.offset;havoc push_#t~malloc5#1.base, push_#t~malloc5#1.offset; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {163905#(not (= ~x1~0.base 0))} SUMMARY for call write~int(0, ~x1~0.base, ~x1~0.offset, 4); srcloc: L538 {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {163905#(not (= ~x1~0.base 0))} SUMMARY for call write~$Pointer$(0, 0, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L538-1 {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {163905#(not (= ~x1~0.base 0))} assume { :end_inline_push } true; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,473 INFO L290 TraceCheckUtils]: 10: Hoare triple {163905#(not (= ~x1~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {163905#(not (= ~x1~0.base 0))} assume main_#t~short11#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,474 INFO L290 TraceCheckUtils]: 13: Hoare triple {163905#(not (= ~x1~0.base 0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,474 INFO L290 TraceCheckUtils]: 15: Hoare triple {163905#(not (= ~x1~0.base 0))} assume push_#t~switch4#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,475 INFO L290 TraceCheckUtils]: 16: Hoare triple {163905#(not (= ~x1~0.base 0))} SUMMARY for call write~int(4, ~x1~0.base, ~x1~0.offset, 4); srcloc: L542 {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,475 INFO L290 TraceCheckUtils]: 17: Hoare triple {163905#(not (= ~x1~0.base 0))} assume { :end_inline_push } true; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,475 INFO L290 TraceCheckUtils]: 18: Hoare triple {163905#(not (= ~x1~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,475 INFO L290 TraceCheckUtils]: 19: Hoare triple {163905#(not (= ~x1~0.base 0))} assume main_#t~short11#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,476 INFO L290 TraceCheckUtils]: 20: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,476 INFO L290 TraceCheckUtils]: 21: Hoare triple {163905#(not (= ~x1~0.base 0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,476 INFO L290 TraceCheckUtils]: 22: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,477 INFO L290 TraceCheckUtils]: 23: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,477 INFO L290 TraceCheckUtils]: 24: Hoare triple {163905#(not (= ~x1~0.base 0))} assume push_#t~switch4#1;~t1~0.base, ~t1~0.offset := ~S~0.base, ~S~0.offset; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,477 INFO L290 TraceCheckUtils]: 25: Hoare triple {163905#(not (= ~x1~0.base 0))} assume { :end_inline_push } true; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,478 INFO L290 TraceCheckUtils]: 26: Hoare triple {163905#(not (= ~x1~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,478 INFO L290 TraceCheckUtils]: 27: Hoare triple {163905#(not (= ~x1~0.base 0))} assume main_#t~short11#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,478 INFO L290 TraceCheckUtils]: 28: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,479 INFO L290 TraceCheckUtils]: 29: Hoare triple {163905#(not (= ~x1~0.base 0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,479 INFO L290 TraceCheckUtils]: 30: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,479 INFO L290 TraceCheckUtils]: 31: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,479 INFO L290 TraceCheckUtils]: 32: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,480 INFO L290 TraceCheckUtils]: 33: Hoare triple {163905#(not (= ~x1~0.base 0))} assume push_#t~switch4#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,480 INFO L290 TraceCheckUtils]: 34: Hoare triple {163905#(not (= ~x1~0.base 0))} SUMMARY for call write~$Pointer$(~t1~0.base, ~t1~0.offset, ~x1~0.base, 4 + ~x1~0.offset, 4); srcloc: L548 {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,480 INFO L290 TraceCheckUtils]: 35: Hoare triple {163905#(not (= ~x1~0.base 0))} assume { :end_inline_push } true; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,481 INFO L290 TraceCheckUtils]: 36: Hoare triple {163905#(not (= ~x1~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,481 INFO L290 TraceCheckUtils]: 37: Hoare triple {163905#(not (= ~x1~0.base 0))} assume main_#t~short11#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,481 INFO L290 TraceCheckUtils]: 38: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,482 INFO L290 TraceCheckUtils]: 39: Hoare triple {163905#(not (= ~x1~0.base 0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,482 INFO L290 TraceCheckUtils]: 40: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,482 INFO L290 TraceCheckUtils]: 41: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,483 INFO L290 TraceCheckUtils]: 42: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,483 INFO L290 TraceCheckUtils]: 43: Hoare triple {163905#(not (= ~x1~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,483 INFO L290 TraceCheckUtils]: 44: Hoare triple {163905#(not (= ~x1~0.base 0))} assume push_#t~switch4#1; {163905#(not (= ~x1~0.base 0))} is VALID [2022-02-20 23:45:30,484 INFO L290 TraceCheckUtils]: 45: Hoare triple {163905#(not (= ~x1~0.base 0))} assume ~S~0.base == ~t1~0.base && ~S~0.offset == ~t1~0.offset;~S~0.base, ~S~0.offset := ~x1~0.base, ~x1~0.offset; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,484 INFO L290 TraceCheckUtils]: 46: Hoare triple {163906#(not (= ~S~0.base 0))} assume { :end_inline_push } true; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,484 INFO L290 TraceCheckUtils]: 47: Hoare triple {163906#(not (= ~S~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,484 INFO L290 TraceCheckUtils]: 48: Hoare triple {163906#(not (= ~S~0.base 0))} assume main_#t~short11#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,485 INFO L290 TraceCheckUtils]: 49: Hoare triple {163906#(not (= ~S~0.base 0))} assume !!main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1;assume -2147483648 <= main_#t~nondet12#1 && main_#t~nondet12#1 <= 2147483647; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,485 INFO L290 TraceCheckUtils]: 50: Hoare triple {163906#(not (= ~S~0.base 0))} assume 0 != main_#t~nondet12#1;havoc main_#t~nondet12#1;assume { :begin_inline_push } true;havoc push_#t~post3#1, push_#t~switch4#1, push_#t~malloc5#1.base, push_#t~malloc5#1.offset;push_#t~post3#1 := ~pc1~0;~pc1~0 := 1 + push_#t~post3#1;push_#t~switch4#1 := 1 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,485 INFO L290 TraceCheckUtils]: 51: Hoare triple {163906#(not (= ~S~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 2 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,486 INFO L290 TraceCheckUtils]: 52: Hoare triple {163906#(not (= ~S~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 3 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,486 INFO L290 TraceCheckUtils]: 53: Hoare triple {163906#(not (= ~S~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 4 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,486 INFO L290 TraceCheckUtils]: 54: Hoare triple {163906#(not (= ~S~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 5 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,487 INFO L290 TraceCheckUtils]: 55: Hoare triple {163906#(not (= ~S~0.base 0))} assume !push_#t~switch4#1;push_#t~switch4#1 := push_#t~switch4#1 || 6 == push_#t~post3#1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,487 INFO L290 TraceCheckUtils]: 56: Hoare triple {163906#(not (= ~S~0.base 0))} assume push_#t~switch4#1;~pc1~0 := 1; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,487 INFO L290 TraceCheckUtils]: 57: Hoare triple {163906#(not (= ~S~0.base 0))} assume { :end_inline_push } true; {163906#(not (= ~S~0.base 0))} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 58: Hoare triple {163906#(not (= ~S~0.base 0))} main_#t~short11#1 := (~S~0.base != 0 || ~S~0.offset != 0) || 1 != ~pc1~0; {163907#|ULTIMATE.start_main_#t~short11#1|} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 59: Hoare triple {163907#|ULTIMATE.start_main_#t~short11#1|} assume !main_#t~short11#1;assume -2147483648 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_#t~short11#1 := 0 != main_#t~nondet10#1; {163904#false} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 60: Hoare triple {163904#false} assume !main_#t~short11#1;havoc main_#t~nondet10#1;havoc main_#t~short11#1; {163904#false} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 61: Hoare triple {163904#false} assume !(~garbage~0.base != 0 || ~garbage~0.offset != 0); {163904#false} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 62: Hoare triple {163904#false} ~S~0.base, ~S~0.offset := 0, 0;~t1~0.base, ~t1~0.offset := 0, 0;~x1~0.base, ~x1~0.offset := 0, 0;~t4~0.base, ~t4~0.offset := 0, 0;~x4~0.base, ~x4~0.offset := 0, 0;main_#res#1 := (if !(~garbage~0.base == 0 && ~garbage~0.offset == 0) then 1 else 0); {163904#false} is VALID [2022-02-20 23:45:30,488 INFO L290 TraceCheckUtils]: 63: Hoare triple {163904#false} assume !(#valid == main_old_#valid#1); {163904#false} is VALID [2022-02-20 23:45:30,489 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 33 proven. 47 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-02-20 23:45:30,489 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:45:30,489 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2143839499] [2022-02-20 23:45:30,489 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2143839499] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:45:30,489 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [978473178] [2022-02-20 23:45:30,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:45:30,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:45:30,490 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:45:30,491 INFO L229 MonitoredProcess]: Starting monitored process 13 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:45:30,499 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process