./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/openbsd_cstrlen-alloca-1.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/array-memsafety/openbsd_cstrlen-alloca-1.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash dd76b7822e4f01d656aa547f942373edd42b5cbb2c90dd9f0d7299ee64d98734 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:41:26,340 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:41:26,341 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:41:26,364 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:41:26,364 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:41:26,365 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:41:26,366 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:41:26,373 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:41:26,375 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:41:26,378 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:41:26,379 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:41:26,380 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:41:26,380 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:41:26,383 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:41:26,384 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:41:26,386 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:41:26,387 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:41:26,387 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:41:26,390 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:41:26,394 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:41:26,395 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:41:26,396 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:41:26,397 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:41:26,398 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:41:26,403 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:41:26,403 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:41:26,403 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:41:26,404 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:41:26,404 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:41:26,404 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:41:26,405 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:41:26,405 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:41:26,405 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:41:26,406 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:41:26,406 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:41:26,407 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:41:26,407 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:41:26,407 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:41:26,407 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:41:26,408 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:41:26,408 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:41:26,412 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:41:26,445 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:41:26,445 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:41:26,445 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:41:26,446 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:41:26,446 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:41:26,447 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:41:26,447 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:41:26,447 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:41:26,447 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:41:26,447 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:41:26,448 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:41:26,448 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:41:26,449 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:41:26,450 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:41:26,450 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:41:26,451 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:41:26,451 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:41:26,451 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:41:26,451 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:41:26,451 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:41:26,451 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 -> dd76b7822e4f01d656aa547f942373edd42b5cbb2c90dd9f0d7299ee64d98734 [2022-02-20 23:41:26,657 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:41:26,680 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:41:26,683 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:41:26,684 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:41:26,685 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:41:26,686 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/openbsd_cstrlen-alloca-1.i [2022-02-20 23:41:26,736 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/35f05e073/84f2145f522046e78e6e044b6402ccc7/FLAG40039274b [2022-02-20 23:41:27,131 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:41:27,139 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/openbsd_cstrlen-alloca-1.i [2022-02-20 23:41:27,148 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/35f05e073/84f2145f522046e78e6e044b6402ccc7/FLAG40039274b [2022-02-20 23:41:27,528 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/35f05e073/84f2145f522046e78e6e044b6402ccc7 [2022-02-20 23:41:27,529 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:41:27,530 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:41:27,535 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:41:27,535 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:41:27,538 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:41:27,538 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,539 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@f7854a4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27, skipping insertion in model container [2022-02-20 23:41:27,539 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,549 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:41:27,580 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:41:27,772 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:41:27,781 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:41:27,828 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:41:27,846 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:41:27,846 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27 WrapperNode [2022-02-20 23:41:27,846 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:41:27,848 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:41:27,848 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:41:27,848 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:41:27,856 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:41:27" (1/1) ... [2022-02-20 23:41:27,874 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:41:27" (1/1) ... [2022-02-20 23:41:27,892 INFO L137 Inliner]: procedures = 117, calls = 9, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 47 [2022-02-20 23:41:27,893 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:41:27,893 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:41:27,893 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:41:27,893 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:41:27,898 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,899 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,905 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,905 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,909 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,912 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,913 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,914 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:41:27,923 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:41:27,924 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:41:27,924 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:41:27,925 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (1/1) ... [2022-02-20 23:41:27,945 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:41:27,954 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:27,965 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:41:27,988 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:41:28,008 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:41:28,008 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:41:28,008 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:41:28,009 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:41:28,009 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:41:28,009 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:41:28,070 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:41:28,071 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:41:28,269 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:41:28,274 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:41:28,276 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:41:28,277 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:41:28 BoogieIcfgContainer [2022-02-20 23:41:28,277 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:41:28,278 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:41:28,279 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:41:28,281 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:41:28,282 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:41:27" (1/3) ... [2022-02-20 23:41:28,282 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2670e881 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:41:28, skipping insertion in model container [2022-02-20 23:41:28,283 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:41:27" (2/3) ... [2022-02-20 23:41:28,283 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2670e881 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:41:28, skipping insertion in model container [2022-02-20 23:41:28,283 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:41:28" (3/3) ... [2022-02-20 23:41:28,284 INFO L111 eAbstractionObserver]: Analyzing ICFG openbsd_cstrlen-alloca-1.i [2022-02-20 23:41:28,287 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:41:28,288 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 7 error locations. [2022-02-20 23:41:28,321 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:41:28,325 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:41:28,326 INFO L340 AbstractCegarLoop]: Starting to check reachability of 7 error locations. [2022-02-20 23:41:28,336 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 17 states have (on average 1.7058823529411764) internal successors, (29), 24 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,340 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:41:28,340 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:28,341 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:41:28,341 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:28,344 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:28,345 INFO L85 PathProgramCache]: Analyzing trace with hash 889508873, now seen corresponding path program 1 times [2022-02-20 23:41:28,362 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:28,362 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [499843928] [2022-02-20 23:41:28,362 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:28,363 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:28,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:28,570 INFO L290 TraceCheckUtils]: 0: Hoare triple {28#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {28#true} is VALID [2022-02-20 23:41:28,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {28#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {28#true} is VALID [2022-02-20 23:41:28,572 INFO L290 TraceCheckUtils]: 2: Hoare triple {28#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {30#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:41:28,573 INFO L290 TraceCheckUtils]: 3: Hoare triple {30#(<= |ULTIMATE.start_main_~length1~0#1| 1)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {31#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| 1))} is VALID [2022-02-20 23:41:28,574 INFO L290 TraceCheckUtils]: 4: Hoare triple {31#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {29#false} is VALID [2022-02-20 23:41:28,575 INFO L290 TraceCheckUtils]: 5: Hoare triple {29#false} assume !(1 == #valid[main_~nondetString1~0#1.base]); {29#false} is VALID [2022-02-20 23:41:28,576 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:41:28,576 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:28,576 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [499843928] [2022-02-20 23:41:28,577 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [499843928] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:28,577 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:28,577 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:41:28,578 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [275837843] [2022-02-20 23:41:28,579 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:28,582 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:28,583 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:28,585 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:28,593 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:41:28,594 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:28,612 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:41:28,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:28,615 INFO L87 Difference]: Start difference. First operand has 25 states, 17 states have (on average 1.7058823529411764) internal successors, (29), 24 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,708 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,709 INFO L93 Difference]: Finished difference Result 42 states and 44 transitions. [2022-02-20 23:41:28,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:41:28,710 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:28,710 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:28,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2022-02-20 23:41:28,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2022-02-20 23:41:28,727 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 49 transitions. [2022-02-20 23:41:28,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:28,787 INFO L225 Difference]: With dead ends: 42 [2022-02-20 23:41:28,787 INFO L226 Difference]: Without dead ends: 38 [2022-02-20 23:41:28,790 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:28,793 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 33 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 12 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:28,794 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 42 Invalid, 12 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:28,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-02-20 23:41:28,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 25. [2022-02-20 23:41:28,811 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:28,811 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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:41:28,812 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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:41:28,812 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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:41:28,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,814 INFO L93 Difference]: Finished difference Result 38 states and 40 transitions. [2022-02-20 23:41:28,814 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 40 transitions. [2022-02-20 23:41:28,814 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:28,814 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:28,815 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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) Second operand 38 states. [2022-02-20 23:41:28,815 INFO L87 Difference]: Start difference. First operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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) Second operand 38 states. [2022-02-20 23:41:28,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,817 INFO L93 Difference]: Finished difference Result 38 states and 40 transitions. [2022-02-20 23:41:28,817 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 40 transitions. [2022-02-20 23:41:28,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:28,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:28,817 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:28,817 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:28,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 18 states have (on average 1.5) internal successors, (27), 24 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:41:28,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 27 transitions. [2022-02-20 23:41:28,819 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 27 transitions. Word has length 6 [2022-02-20 23:41:28,819 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:28,820 INFO L470 AbstractCegarLoop]: Abstraction has 25 states and 27 transitions. [2022-02-20 23:41:28,820 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 1.5) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,820 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 27 transitions. [2022-02-20 23:41:28,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:41:28,820 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:28,820 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:41:28,821 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:41:28,821 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:28,821 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:28,822 INFO L85 PathProgramCache]: Analyzing trace with hash 889508820, now seen corresponding path program 1 times [2022-02-20 23:41:28,822 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:28,822 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [19027511] [2022-02-20 23:41:28,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:28,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:28,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:28,848 INFO L290 TraceCheckUtils]: 0: Hoare triple {177#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {177#true} is VALID [2022-02-20 23:41:28,849 INFO L290 TraceCheckUtils]: 1: Hoare triple {177#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {177#true} is VALID [2022-02-20 23:41:28,849 INFO L290 TraceCheckUtils]: 2: Hoare triple {177#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {177#true} is VALID [2022-02-20 23:41:28,850 INFO L290 TraceCheckUtils]: 3: Hoare triple {177#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {179#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:41:28,850 INFO L290 TraceCheckUtils]: 4: Hoare triple {179#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {179#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:41:28,851 INFO L290 TraceCheckUtils]: 5: Hoare triple {179#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString1~0#1.base]); {178#false} is VALID [2022-02-20 23:41:28,851 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:41:28,851 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:28,851 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [19027511] [2022-02-20 23:41:28,851 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [19027511] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:28,851 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:28,852 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:41:28,852 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [343409044] [2022-02-20 23:41:28,852 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:28,853 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:28,853 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:28,853 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,858 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:28,858 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:41:28,858 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:28,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:41:28,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:41:28,859 INFO L87 Difference]: Start difference. First operand 25 states and 27 transitions. Second operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,888 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-02-20 23:41:28,888 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:41:28,888 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:28,888 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:28,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,889 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 25 transitions. [2022-02-20 23:41:28,889 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 25 transitions. [2022-02-20 23:41:28,890 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 25 transitions. [2022-02-20 23:41:28,908 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:41:28,909 INFO L225 Difference]: With dead ends: 23 [2022-02-20 23:41:28,909 INFO L226 Difference]: Without dead ends: 23 [2022-02-20 23:41:28,909 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:41:28,910 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 15 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 17 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:28,910 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 17 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:28,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-02-20 23:41:28,912 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-02-20 23:41:28,912 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:28,913 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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:41:28,913 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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:41:28,913 INFO L87 Difference]: Start difference. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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:41:28,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,914 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-02-20 23:41:28,914 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-02-20 23:41:28,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:28,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:28,915 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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) Second operand 23 states. [2022-02-20 23:41:28,915 INFO L87 Difference]: Start difference. First operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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) Second operand 23 states. [2022-02-20 23:41:28,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:28,916 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-02-20 23:41:28,916 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-02-20 23:41:28,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:28,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:28,916 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:28,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:28,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 22 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:41:28,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2022-02-20 23:41:28,918 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 6 [2022-02-20 23:41:28,918 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:28,918 INFO L470 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2022-02-20 23:41:28,918 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,918 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-02-20 23:41:28,918 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:41:28,919 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:28,919 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:41:28,919 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:41:28,919 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:28,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:28,920 INFO L85 PathProgramCache]: Analyzing trace with hash 889508821, now seen corresponding path program 1 times [2022-02-20 23:41:28,920 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:28,920 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [285801661] [2022-02-20 23:41:28,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:28,920 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:28,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:28,966 INFO L290 TraceCheckUtils]: 0: Hoare triple {274#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {274#true} is VALID [2022-02-20 23:41:28,966 INFO L290 TraceCheckUtils]: 1: Hoare triple {274#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {274#true} is VALID [2022-02-20 23:41:28,967 INFO L290 TraceCheckUtils]: 2: Hoare triple {274#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {276#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:28,968 INFO L290 TraceCheckUtils]: 3: Hoare triple {276#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {277#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,968 INFO L290 TraceCheckUtils]: 4: Hoare triple {277#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {277#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,969 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1)) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1)); {275#false} is VALID [2022-02-20 23:41:28,969 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:41:28,969 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:28,969 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [285801661] [2022-02-20 23:41:28,970 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [285801661] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:28,970 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:28,970 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:41:28,970 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1908494801] [2022-02-20 23:41:28,970 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:28,971 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:28,971 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:28,971 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:28,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:28,976 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:41:28,976 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:28,977 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:41:28,977 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:28,977 INFO L87 Difference]: Start difference. First operand 23 states and 25 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,015 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2022-02-20 23:41:29,015 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:41:29,016 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:29,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:29,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2022-02-20 23:41:29,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2022-02-20 23:41:29,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 23 transitions. [2022-02-20 23:41:29,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,040 INFO L225 Difference]: With dead ends: 22 [2022-02-20 23:41:29,040 INFO L226 Difference]: Without dead ends: 22 [2022-02-20 23:41:29,041 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:29,042 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 18 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 15 SdHoareTripleChecker+Invalid, 14 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:29,042 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 15 Invalid, 14 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:29,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2022-02-20 23:41:29,044 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2022-02-20 23:41:29,044 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:29,044 INFO L82 GeneralOperation]: Start isEquivalent. First operand 22 states. Second operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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:41:29,044 INFO L74 IsIncluded]: Start isIncluded. First operand 22 states. Second operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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:41:29,045 INFO L87 Difference]: Start difference. First operand 22 states. Second operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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:41:29,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,045 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2022-02-20 23:41:29,046 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-02-20 23:41:29,046 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,046 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,046 INFO L74 IsIncluded]: Start isIncluded. First operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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) Second operand 22 states. [2022-02-20 23:41:29,047 INFO L87 Difference]: Start difference. First operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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) Second operand 22 states. [2022-02-20 23:41:29,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,048 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2022-02-20 23:41:29,048 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-02-20 23:41:29,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,048 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:29,048 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:29,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 21 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:41:29,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 24 transitions. [2022-02-20 23:41:29,049 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 24 transitions. Word has length 6 [2022-02-20 23:41:29,050 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:29,050 INFO L470 AbstractCegarLoop]: Abstraction has 22 states and 24 transitions. [2022-02-20 23:41:29,050 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,050 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-02-20 23:41:29,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:41:29,051 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:29,051 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:41:29,051 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:41:29,051 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:29,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:29,052 INFO L85 PathProgramCache]: Analyzing trace with hash 889568456, now seen corresponding path program 1 times [2022-02-20 23:41:29,052 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:29,052 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [926511689] [2022-02-20 23:41:29,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:29,053 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:29,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,149 INFO L290 TraceCheckUtils]: 0: Hoare triple {368#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {368#true} is VALID [2022-02-20 23:41:29,149 INFO L290 TraceCheckUtils]: 1: Hoare triple {368#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {368#true} is VALID [2022-02-20 23:41:29,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {368#true} assume !(main_~length1~0#1 < 1); {370#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:29,150 INFO L290 TraceCheckUtils]: 3: Hoare triple {370#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {371#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,151 INFO L290 TraceCheckUtils]: 4: Hoare triple {371#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {372#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:29,152 INFO L290 TraceCheckUtils]: 5: Hoare triple {372#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {369#false} is VALID [2022-02-20 23:41:29,152 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:41:29,153 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:29,153 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [926511689] [2022-02-20 23:41:29,153 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [926511689] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:29,153 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:29,153 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:41:29,153 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1201550941] [2022-02-20 23:41:29,153 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:29,154 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:29,154 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:29,154 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,159 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,159 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:41:29,160 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:29,160 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:41:29,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:41:29,161 INFO L87 Difference]: Start difference. First operand 22 states and 24 transitions. Second operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,242 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:41:29,242 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:41:29,242 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 6 [2022-02-20 23:41:29,242 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:29,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 39 transitions. [2022-02-20 23:41:29,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 39 transitions. [2022-02-20 23:41:29,245 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 39 transitions. [2022-02-20 23:41:29,276 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,278 INFO L225 Difference]: With dead ends: 37 [2022-02-20 23:41:29,279 INFO L226 Difference]: Without dead ends: 37 [2022-02-20 23:41:29,279 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:41:29,285 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 62 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 25 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:29,286 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [62 Valid, 25 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:29,287 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-20 23:41:29,290 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 24. [2022-02-20 23:41:29,290 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:29,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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:41:29,291 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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:41:29,291 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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:41:29,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,292 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:41:29,292 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-20 23:41:29,294 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,294 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,294 INFO L74 IsIncluded]: Start isIncluded. First operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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) Second operand 37 states. [2022-02-20 23:41:29,294 INFO L87 Difference]: Start difference. First operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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) Second operand 37 states. [2022-02-20 23:41:29,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,298 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:41:29,298 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-20 23:41:29,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:29,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:29,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 20 states have (on average 1.35) internal successors, (27), 23 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:41:29,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 27 transitions. [2022-02-20 23:41:29,302 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 27 transitions. Word has length 6 [2022-02-20 23:41:29,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:29,302 INFO L470 AbstractCegarLoop]: Abstraction has 24 states and 27 transitions. [2022-02-20 23:41:29,302 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.5) internal successors, (6), 5 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,302 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-02-20 23:41:29,303 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:41:29,303 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:29,303 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:29,303 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:41:29,303 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:29,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:29,304 INFO L85 PathProgramCache]: Analyzing trace with hash 119484120, now seen corresponding path program 1 times [2022-02-20 23:41:29,305 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:29,305 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [432036896] [2022-02-20 23:41:29,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:29,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:29,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,357 INFO L290 TraceCheckUtils]: 0: Hoare triple {510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {510#true} is VALID [2022-02-20 23:41:29,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {510#true} is VALID [2022-02-20 23:41:29,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {510#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {510#true} is VALID [2022-02-20 23:41:29,358 INFO L290 TraceCheckUtils]: 3: Hoare triple {510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {510#true} is VALID [2022-02-20 23:41:29,358 INFO L290 TraceCheckUtils]: 4: Hoare triple {510#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {510#true} is VALID [2022-02-20 23:41:29,358 INFO L290 TraceCheckUtils]: 5: Hoare triple {510#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {512#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:41:29,359 INFO L290 TraceCheckUtils]: 6: Hoare triple {512#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {513#(= (select |#valid| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1)} is VALID [2022-02-20 23:41:29,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {513#(= (select |#valid| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1)} assume !(1 == #valid[cstrlen_~s~0#1.base]); {511#false} is VALID [2022-02-20 23:41:29,360 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:41:29,360 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:29,360 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [432036896] [2022-02-20 23:41:29,360 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [432036896] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:29,360 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:29,360 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:41:29,360 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1870964127] [2022-02-20 23:41:29,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:29,361 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,361 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:29,361 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,367 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:41:29,367 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:41:29,367 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:29,367 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:41:29,367 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:29,368 INFO L87 Difference]: Start difference. First operand 24 states and 27 transitions. Second operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,410 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2022-02-20 23:41:29,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:41:29,410 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,410 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:29,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 22 transitions. [2022-02-20 23:41:29,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 22 transitions. [2022-02-20 23:41:29,411 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 22 transitions. [2022-02-20 23:41:29,429 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,430 INFO L225 Difference]: With dead ends: 23 [2022-02-20 23:41:29,430 INFO L226 Difference]: Without dead ends: 23 [2022-02-20 23:41:29,430 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:41:29,431 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 17 mSDsluCounter, 8 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 21 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:29,431 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 21 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:29,431 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-02-20 23:41:29,432 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-02-20 23:41:29,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:29,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,432 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,433 INFO L87 Difference]: Start difference. First operand 23 states. Second operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,433 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2022-02-20 23:41:29,433 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2022-02-20 23:41:29,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,434 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 23 states. [2022-02-20 23:41:29,434 INFO L87 Difference]: Start difference. First operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 23 states. [2022-02-20 23:41:29,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,435 INFO L93 Difference]: Finished difference Result 23 states and 26 transitions. [2022-02-20 23:41:29,435 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2022-02-20 23:41:29,435 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,435 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,435 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:29,435 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:29,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 20 states have (on average 1.3) internal successors, (26), 22 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:29,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 26 transitions. [2022-02-20 23:41:29,436 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 26 transitions. Word has length 8 [2022-02-20 23:41:29,436 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:29,436 INFO L470 AbstractCegarLoop]: Abstraction has 23 states and 26 transitions. [2022-02-20 23:41:29,436 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 4 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:41:29,436 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 26 transitions. [2022-02-20 23:41:29,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-02-20 23:41:29,437 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:29,437 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:29,437 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:41:29,437 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:29,437 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:29,438 INFO L85 PathProgramCache]: Analyzing trace with hash 119484121, now seen corresponding path program 1 times [2022-02-20 23:41:29,438 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:29,438 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [28207893] [2022-02-20 23:41:29,438 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:29,438 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:29,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,522 INFO L290 TraceCheckUtils]: 0: Hoare triple {610#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {610#true} is VALID [2022-02-20 23:41:29,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {610#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {610#true} is VALID [2022-02-20 23:41:29,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {610#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {612#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:29,523 INFO L290 TraceCheckUtils]: 3: Hoare triple {612#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {613#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:29,524 INFO L290 TraceCheckUtils]: 4: Hoare triple {613#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {613#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:29,525 INFO L290 TraceCheckUtils]: 5: Hoare triple {613#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {614#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:29,525 INFO L290 TraceCheckUtils]: 6: Hoare triple {614#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {615#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:29,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {615#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {611#false} is VALID [2022-02-20 23:41:29,526 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:41:29,526 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:29,527 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [28207893] [2022-02-20 23:41:29,527 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [28207893] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:29,527 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:29,527 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:41:29,527 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1153785356] [2022-02-20 23:41:29,527 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:29,527 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:29,528 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,533 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:41:29,533 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:41:29,533 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:29,534 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:41:29,534 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:41:29,534 INFO L87 Difference]: Start difference. First operand 23 states and 26 transitions. Second operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,616 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-02-20 23:41:29,616 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:41:29,616 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,616 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:29,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 23:41:29,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-02-20 23:41:29,618 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-02-20 23:41:29,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,646 INFO L225 Difference]: With dead ends: 30 [2022-02-20 23:41:29,646 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 23:41:29,646 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:41:29,646 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 71 mSDsluCounter, 14 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 24 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:29,647 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [71 Valid, 24 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:29,647 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 23:41:29,648 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 24. [2022-02-20 23:41:29,648 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:29,648 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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:41:29,648 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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:41:29,649 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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:41:29,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,649 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-02-20 23:41:29,649 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2022-02-20 23:41:29,650 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,650 INFO L74 IsIncluded]: Start isIncluded. First operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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) Second operand 30 states. [2022-02-20 23:41:29,650 INFO L87 Difference]: Start difference. First operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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) Second operand 30 states. [2022-02-20 23:41:29,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:29,651 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-02-20 23:41:29,651 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2022-02-20 23:41:29,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:29,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:29,651 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:29,651 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:29,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 23 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:41:29,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 27 transitions. [2022-02-20 23:41:29,652 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 27 transitions. Word has length 8 [2022-02-20 23:41:29,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:29,652 INFO L470 AbstractCegarLoop]: Abstraction has 24 states and 27 transitions. [2022-02-20 23:41:29,653 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 6 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:41:29,653 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-02-20 23:41:29,653 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:41:29,653 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:29,653 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:29,653 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:41:29,653 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:29,654 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:29,654 INFO L85 PathProgramCache]: Analyzing trace with hash -1900556789, now seen corresponding path program 1 times [2022-02-20 23:41:29,654 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:29,654 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [746057819] [2022-02-20 23:41:29,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:29,654 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:29,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,737 INFO L290 TraceCheckUtils]: 0: Hoare triple {734#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {734#true} is VALID [2022-02-20 23:41:29,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {734#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {734#true} is VALID [2022-02-20 23:41:29,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {734#true} assume !(main_~length1~0#1 < 1); {734#true} is VALID [2022-02-20 23:41:29,741 INFO L290 TraceCheckUtils]: 3: Hoare triple {734#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,742 INFO L290 TraceCheckUtils]: 4: Hoare triple {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,743 INFO L290 TraceCheckUtils]: 5: Hoare triple {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,744 INFO L290 TraceCheckUtils]: 6: Hoare triple {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} havoc main_#t~nondet7#1; {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {736#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {737#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} is VALID [2022-02-20 23:41:29,745 INFO L290 TraceCheckUtils]: 8: Hoare triple {737#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length1~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {738#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:29,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {738#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {735#false} is VALID [2022-02-20 23:41:29,746 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:29,746 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:29,746 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [746057819] [2022-02-20 23:41:29,746 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [746057819] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:29,746 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [620529088] [2022-02-20 23:41:29,747 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:29,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:29,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:29,748 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:41:29,752 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:41:29,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,816 INFO L263 TraceCheckSpWp]: Trace formula consists of 49 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:41:29,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:29,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:29,948 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:41:30,055 INFO L290 TraceCheckUtils]: 0: Hoare triple {734#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {734#true} is VALID [2022-02-20 23:41:30,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {734#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {734#true} is VALID [2022-02-20 23:41:30,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {734#true} assume !(main_~length1~0#1 < 1); {734#true} is VALID [2022-02-20 23:41:30,056 INFO L290 TraceCheckUtils]: 3: Hoare triple {734#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:30,057 INFO L290 TraceCheckUtils]: 4: Hoare triple {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:30,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:30,058 INFO L290 TraceCheckUtils]: 6: Hoare triple {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:30,058 INFO L290 TraceCheckUtils]: 7: Hoare triple {751#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {764#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:30,059 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {738#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:30,059 INFO L290 TraceCheckUtils]: 9: Hoare triple {738#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {735#false} is VALID [2022-02-20 23:41:30,059 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:30,060 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:30,300 INFO L290 TraceCheckUtils]: 9: Hoare triple {771#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|)))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {735#false} is VALID [2022-02-20 23:41:30,301 INFO L290 TraceCheckUtils]: 8: Hoare triple {775#(or (and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {771#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:30,302 INFO L290 TraceCheckUtils]: 7: Hoare triple {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {775#(or (and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:41:30,302 INFO L290 TraceCheckUtils]: 6: Hoare triple {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} havoc main_#t~nondet7#1; {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:41:30,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:41:30,304 INFO L290 TraceCheckUtils]: 4: Hoare triple {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:41:30,304 INFO L290 TraceCheckUtils]: 3: Hoare triple {734#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {779#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:41:30,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {734#true} assume !(main_~length1~0#1 < 1); {734#true} is VALID [2022-02-20 23:41:30,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {734#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {734#true} is VALID [2022-02-20 23:41:30,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {734#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {734#true} is VALID [2022-02-20 23:41:30,305 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:30,305 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [620529088] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:30,305 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:30,305 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 9 [2022-02-20 23:41:30,306 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [38744619] [2022-02-20 23:41:30,306 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:30,306 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 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:41:30,306 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:30,306 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,321 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:30,322 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:41:30,322 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:30,322 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:41:30,322 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=58, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:41:30,323 INFO L87 Difference]: Start difference. First operand 24 states and 27 transitions. Second operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,628 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-02-20 23:41:30,628 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:41:30,628 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 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:41:30,628 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:30,628 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 48 transitions. [2022-02-20 23:41:30,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 48 transitions. [2022-02-20 23:41:30,629 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 48 transitions. [2022-02-20 23:41:30,672 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:30,672 INFO L225 Difference]: With dead ends: 48 [2022-02-20 23:41:30,672 INFO L226 Difference]: Without dead ends: 48 [2022-02-20 23:41:30,673 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 13 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=57, Invalid=99, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:41:30,673 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 80 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 80 SdHoareTripleChecker+Valid, 73 SdHoareTripleChecker+Invalid, 88 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:30,673 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [80 Valid, 73 Invalid, 88 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:41:30,674 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-02-20 23:41:30,675 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 21. [2022-02-20 23:41:30,675 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:30,675 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,675 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,675 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,676 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-02-20 23:41:30,676 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-02-20 23:41:30,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:30,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:30,677 INFO L74 IsIncluded]: Start isIncluded. First operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 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 48 states. [2022-02-20 23:41:30,677 INFO L87 Difference]: Start difference. First operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 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 48 states. [2022-02-20 23:41:30,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,678 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-02-20 23:41:30,678 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-02-20 23:41:30,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:30,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:30,678 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:30,678 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:30,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 23 transitions. [2022-02-20 23:41:30,679 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 23 transitions. Word has length 10 [2022-02-20 23:41:30,679 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:30,679 INFO L470 AbstractCegarLoop]: Abstraction has 21 states and 23 transitions. [2022-02-20 23:41:30,679 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,679 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 23 transitions. [2022-02-20 23:41:30,680 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:41:30,680 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:30,680 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:30,701 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:41:30,891 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:30,894 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:30,894 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:30,894 INFO L85 PathProgramCache]: Analyzing trace with hash -976458485, now seen corresponding path program 1 times [2022-02-20 23:41:30,894 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:30,894 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1522384492] [2022-02-20 23:41:30,894 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:30,894 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:30,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:30,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {971#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {971#true} is VALID [2022-02-20 23:41:30,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {971#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {971#true} is VALID [2022-02-20 23:41:30,976 INFO L290 TraceCheckUtils]: 2: Hoare triple {971#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {973#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:30,977 INFO L290 TraceCheckUtils]: 3: Hoare triple {973#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {974#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:41:30,977 INFO L290 TraceCheckUtils]: 4: Hoare triple {974#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {974#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:41:30,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {974#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {975#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:41:30,978 INFO L290 TraceCheckUtils]: 6: Hoare triple {975#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {976#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:30,979 INFO L290 TraceCheckUtils]: 7: Hoare triple {976#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {977#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:30,979 INFO L290 TraceCheckUtils]: 8: Hoare triple {977#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {972#false} is VALID [2022-02-20 23:41:30,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {972#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {972#false} is VALID [2022-02-20 23:41:30,979 INFO L290 TraceCheckUtils]: 10: Hoare triple {972#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {972#false} is VALID [2022-02-20 23:41:30,980 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:30,980 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:30,980 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1522384492] [2022-02-20 23:41:30,980 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1522384492] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:30,980 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:30,980 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:41:30,980 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1971817881] [2022-02-20 23:41:30,980 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:30,981 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 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 11 [2022-02-20 23:41:30,981 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:30,981 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:30,988 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:30,988 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:41:30,989 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:30,989 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:41:30,989 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:41:30,989 INFO L87 Difference]: Start difference. First operand 21 states and 23 transitions. Second operand has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,115 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:31,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:41:31,115 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 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 11 [2022-02-20 23:41:31,116 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:31,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 30 transitions. [2022-02-20 23:41:31,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,116 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 30 transitions. [2022-02-20 23:41:31,117 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 30 transitions. [2022-02-20 23:41:31,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:31,150 INFO L225 Difference]: With dead ends: 29 [2022-02-20 23:41:31,150 INFO L226 Difference]: Without dead ends: 29 [2022-02-20 23:41:31,151 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:41:31,151 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 17 mSDsluCounter, 60 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 73 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:31,151 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 73 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:31,151 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-02-20 23:41:31,152 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 25. [2022-02-20 23:41:31,152 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:31,152 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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:41:31,152 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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:41:31,153 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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:41:31,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,153 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:31,153 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2022-02-20 23:41:31,153 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,153 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,153 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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) Second operand 29 states. [2022-02-20 23:41:31,154 INFO L87 Difference]: Start difference. First operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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) Second operand 29 states. [2022-02-20 23:41:31,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,154 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:31,154 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2022-02-20 23:41:31,155 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,155 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,155 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:31,155 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:31,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 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:41:31,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 27 transitions. [2022-02-20 23:41:31,156 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 27 transitions. Word has length 11 [2022-02-20 23:41:31,156 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:31,156 INFO L470 AbstractCegarLoop]: Abstraction has 25 states and 27 transitions. [2022-02-20 23:41:31,156 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.5714285714285714) internal successors, (11), 7 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,156 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 27 transitions. [2022-02-20 23:41:31,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:41:31,156 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:31,156 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:31,157 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:41:31,157 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:31,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:31,157 INFO L85 PathProgramCache]: Analyzing trace with hash -296400115, now seen corresponding path program 1 times [2022-02-20 23:41:31,157 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:31,157 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [169923212] [2022-02-20 23:41:31,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:31,158 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:31,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,269 INFO L290 TraceCheckUtils]: 0: Hoare triple {1098#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1098#true} is VALID [2022-02-20 23:41:31,269 INFO L290 TraceCheckUtils]: 1: Hoare triple {1098#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1098#true} is VALID [2022-02-20 23:41:31,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {1098#true} assume !(main_~length1~0#1 < 1); {1100#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,270 INFO L290 TraceCheckUtils]: 3: Hoare triple {1100#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1101#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,271 INFO L290 TraceCheckUtils]: 4: Hoare triple {1101#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1102#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:41:31,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {1102#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1103#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:41:31,272 INFO L290 TraceCheckUtils]: 6: Hoare triple {1103#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1104#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:31,272 INFO L290 TraceCheckUtils]: 7: Hoare triple {1104#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1105#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:31,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {1105#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1099#false} is VALID [2022-02-20 23:41:31,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {1099#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1099#false} is VALID [2022-02-20 23:41:31,273 INFO L290 TraceCheckUtils]: 10: Hoare triple {1099#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1099#false} is VALID [2022-02-20 23:41:31,273 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:31,273 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:31,273 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [169923212] [2022-02-20 23:41:31,273 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [169923212] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:31,273 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:31,274 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:41:31,274 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1822253818] [2022-02-20 23:41:31,274 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:31,274 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 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 11 [2022-02-20 23:41:31,275 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:31,275 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,281 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:31,281 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:41:31,282 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:31,282 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:41:31,283 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:41:31,283 INFO L87 Difference]: Start difference. First operand 25 states and 27 transitions. Second operand has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,497 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-02-20 23:41:31,497 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:41:31,497 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 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 11 [2022-02-20 23:41:31,498 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:31,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 33 transitions. [2022-02-20 23:41:31,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 33 transitions. [2022-02-20 23:41:31,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 33 transitions. [2022-02-20 23:41:31,526 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:31,527 INFO L225 Difference]: With dead ends: 37 [2022-02-20 23:41:31,527 INFO L226 Difference]: Without dead ends: 37 [2022-02-20 23:41:31,527 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=85, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:41:31,528 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 51 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:31,528 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 58 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:31,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-20 23:41:31,529 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 26. [2022-02-20 23:41:31,529 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:31,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,530 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,530 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,530 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-02-20 23:41:31,531 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-02-20 23:41:31,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,531 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 37 states. [2022-02-20 23:41:31,531 INFO L87 Difference]: Start difference. First operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 37 states. [2022-02-20 23:41:31,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,532 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-02-20 23:41:31,532 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-02-20 23:41:31,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,532 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:31,532 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:31,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 29 transitions. [2022-02-20 23:41:31,532 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 29 transitions. Word has length 11 [2022-02-20 23:41:31,532 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:31,532 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 29 transitions. [2022-02-20 23:41:31,532 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.375) internal successors, (11), 8 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,533 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-02-20 23:41:31,533 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:41:31,533 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:31,533 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:31,533 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:41:31,533 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr6ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:31,533 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:31,533 INFO L85 PathProgramCache]: Analyzing trace with hash -205497247, now seen corresponding path program 1 times [2022-02-20 23:41:31,533 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:31,533 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1332334186] [2022-02-20 23:41:31,533 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:31,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:31,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,596 INFO L290 TraceCheckUtils]: 0: Hoare triple {1253#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1253#true} is VALID [2022-02-20 23:41:31,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {1253#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:41:31,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:41:31,598 INFO L290 TraceCheckUtils]: 3: Hoare triple {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,598 INFO L290 TraceCheckUtils]: 4: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,599 INFO L290 TraceCheckUtils]: 5: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,599 INFO L290 TraceCheckUtils]: 6: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,599 INFO L290 TraceCheckUtils]: 7: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,600 INFO L290 TraceCheckUtils]: 8: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} assume !(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,600 INFO L290 TraceCheckUtils]: 9: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} cstrlen_#res#1 := (if cstrlen_~s~0#1.offset - cstrlen_~str#1.offset < 0 && 0 != (cstrlen_~s~0#1.offset - cstrlen_~str#1.offset) % 1 then 1 + (cstrlen_~s~0#1.offset - cstrlen_~str#1.offset) / 1 else (cstrlen_~s~0#1.offset - cstrlen_~str#1.offset) / 1); {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} is VALID [2022-02-20 23:41:31,601 INFO L290 TraceCheckUtils]: 10: Hoare triple {1256#(= (store |#valid| |ULTIMATE.start_main_#t~malloc5#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)} main_#t~ret8#1 := cstrlen_#res#1;assume { :end_inline_cstrlen } true;main_#res#1 := (if main_#t~ret8#1 % 4294967296 % 4294967296 <= 2147483647 then main_#t~ret8#1 % 4294967296 % 4294967296 else main_#t~ret8#1 % 4294967296 % 4294967296 - 4294967296);havoc main_#t~ret8#1;call ULTIMATE.dealloc(main_#t~malloc5#1.base, main_#t~malloc5#1.offset);havoc main_#t~malloc5#1.base, main_#t~malloc5#1.offset; {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:41:31,601 INFO L290 TraceCheckUtils]: 11: Hoare triple {1255#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {1254#false} is VALID [2022-02-20 23:41:31,602 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:41:31,602 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:31,602 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1332334186] [2022-02-20 23:41:31,602 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1332334186] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:41:31,602 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:41:31,602 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:41:31,602 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [651261126] [2022-02-20 23:41:31,602 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:41:31,603 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:41:31,603 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:31,603 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:31,612 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:41:31,612 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:31,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:41:31,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:31,613 INFO L87 Difference]: Start difference. First operand 26 states and 29 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,638 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-02-20 23:41:31,638 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:41:31,638 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:41:31,639 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:31,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 20 transitions. [2022-02-20 23:41:31,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 20 transitions. [2022-02-20 23:41:31,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 20 transitions. [2022-02-20 23:41:31,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:31,652 INFO L225 Difference]: With dead ends: 25 [2022-02-20 23:41:31,652 INFO L226 Difference]: Without dead ends: 16 [2022-02-20 23:41:31,652 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:41:31,653 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 8 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 26 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:31,654 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 26 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:41:31,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2022-02-20 23:41:31,655 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2022-02-20 23:41:31,655 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:31,655 INFO L82 GeneralOperation]: Start isEquivalent. First operand 16 states. Second operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,655 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,656 INFO L87 Difference]: Start difference. First operand 16 states. Second operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,656 INFO L93 Difference]: Finished difference Result 16 states and 17 transitions. [2022-02-20 23:41:31,656 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 17 transitions. [2022-02-20 23:41:31,656 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,656 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,656 INFO L74 IsIncluded]: Start isIncluded. First operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 16 states. [2022-02-20 23:41:31,657 INFO L87 Difference]: Start difference. First operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 16 states. [2022-02-20 23:41:31,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:31,657 INFO L93 Difference]: Finished difference Result 16 states and 17 transitions. [2022-02-20 23:41:31,657 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 17 transitions. [2022-02-20 23:41:31,657 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:31,657 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:31,658 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:31,658 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:31,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 1.1333333333333333) internal successors, (17), 15 states have internal predecessors, (17), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 17 transitions. [2022-02-20 23:41:31,658 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 17 transitions. Word has length 12 [2022-02-20 23:41:31,658 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:31,658 INFO L470 AbstractCegarLoop]: Abstraction has 16 states and 17 transitions. [2022-02-20 23:41:31,658 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:31,659 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 17 transitions. [2022-02-20 23:41:31,659 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:41:31,659 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:31,659 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:31,659 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:41:31,659 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:31,660 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:31,660 INFO L85 PathProgramCache]: Analyzing trace with hash 1218087850, now seen corresponding path program 1 times [2022-02-20 23:41:31,660 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:31,660 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1974914480] [2022-02-20 23:41:31,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:31,660 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:31,678 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,737 INFO L290 TraceCheckUtils]: 0: Hoare triple {1332#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1332#true} is VALID [2022-02-20 23:41:31,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {1332#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1332#true} is VALID [2022-02-20 23:41:31,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {1332#true} assume !(main_~length1~0#1 < 1); {1332#true} is VALID [2022-02-20 23:41:31,740 INFO L290 TraceCheckUtils]: 3: Hoare triple {1332#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1334#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,740 INFO L290 TraceCheckUtils]: 4: Hoare triple {1334#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,741 INFO L290 TraceCheckUtils]: 6: Hoare triple {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,742 INFO L290 TraceCheckUtils]: 7: Hoare triple {1335#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,743 INFO L290 TraceCheckUtils]: 10: Hoare triple {1336#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,744 INFO L290 TraceCheckUtils]: 12: Hoare triple {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,745 INFO L290 TraceCheckUtils]: 13: Hoare triple {1337#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1338#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,746 INFO L290 TraceCheckUtils]: 14: Hoare triple {1338#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1333#false} is VALID [2022-02-20 23:41:31,746 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:31,746 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:31,746 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1974914480] [2022-02-20 23:41:31,746 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1974914480] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:31,746 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2120749154] [2022-02-20 23:41:31,746 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:31,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:31,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:31,748 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:41:31,749 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:41:31,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,789 INFO L263 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:41:31,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:31,979 INFO L290 TraceCheckUtils]: 0: Hoare triple {1332#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1332#true} is VALID [2022-02-20 23:41:31,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {1332#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1332#true} is VALID [2022-02-20 23:41:31,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {1332#true} assume !(main_~length1~0#1 < 1); {1332#true} is VALID [2022-02-20 23:41:31,981 INFO L290 TraceCheckUtils]: 3: Hoare triple {1332#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1351#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:31,992 INFO L290 TraceCheckUtils]: 4: Hoare triple {1351#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,992 INFO L290 TraceCheckUtils]: 5: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,994 INFO L290 TraceCheckUtils]: 6: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,994 INFO L290 TraceCheckUtils]: 7: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:31,996 INFO L290 TraceCheckUtils]: 9: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1371#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:41:31,996 INFO L290 TraceCheckUtils]: 10: Hoare triple {1371#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1375#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} is VALID [2022-02-20 23:41:31,996 INFO L290 TraceCheckUtils]: 11: Hoare triple {1375#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1379#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,997 INFO L290 TraceCheckUtils]: 12: Hoare triple {1379#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1379#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,997 INFO L290 TraceCheckUtils]: 13: Hoare triple {1379#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1338#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:31,998 INFO L290 TraceCheckUtils]: 14: Hoare triple {1338#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1333#false} is VALID [2022-02-20 23:41:31,998 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:31,998 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:32,162 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:41:32,209 INFO L290 TraceCheckUtils]: 14: Hoare triple {1389#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1333#false} is VALID [2022-02-20 23:41:32,210 INFO L290 TraceCheckUtils]: 13: Hoare triple {1393#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1389#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:32,210 INFO L290 TraceCheckUtils]: 12: Hoare triple {1393#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1393#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:32,211 INFO L290 TraceCheckUtils]: 11: Hoare triple {1400#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1393#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:32,211 INFO L290 TraceCheckUtils]: 10: Hoare triple {1404#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1400#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:32,212 INFO L290 TraceCheckUtils]: 9: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1404#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:41:32,212 INFO L290 TraceCheckUtils]: 8: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:32,212 INFO L290 TraceCheckUtils]: 7: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:32,213 INFO L290 TraceCheckUtils]: 6: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:32,213 INFO L290 TraceCheckUtils]: 5: Hoare triple {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:32,214 INFO L290 TraceCheckUtils]: 4: Hoare triple {1351#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1355#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:32,214 INFO L290 TraceCheckUtils]: 3: Hoare triple {1332#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1351#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:32,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {1332#true} assume !(main_~length1~0#1 < 1); {1332#true} is VALID [2022-02-20 23:41:32,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {1332#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1332#true} is VALID [2022-02-20 23:41:32,214 INFO L290 TraceCheckUtils]: 0: Hoare triple {1332#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1332#true} is VALID [2022-02-20 23:41:32,215 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:32,215 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2120749154] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:32,215 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:32,215 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7, 7] total 15 [2022-02-20 23:41:32,215 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [801931578] [2022-02-20 23:41:32,215 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:32,216 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:41:32,216 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:32,216 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:32,244 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 23:41:32,244 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:32,244 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 23:41:32,244 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=190, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:41:32,244 INFO L87 Difference]: Start difference. First operand 16 states and 17 transitions. Second operand has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:32,473 INFO L93 Difference]: Finished difference Result 24 states and 25 transitions. [2022-02-20 23:41:32,473 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:41:32,473 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:41:32,473 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:32,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 26 transitions. [2022-02-20 23:41:32,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 26 transitions. [2022-02-20 23:41:32,474 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 26 transitions. [2022-02-20 23:41:32,493 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:32,494 INFO L225 Difference]: With dead ends: 24 [2022-02-20 23:41:32,494 INFO L226 Difference]: Without dead ends: 24 [2022-02-20 23:41:32,494 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 18 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=102, Invalid=318, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:41:32,495 INFO L933 BasicCegarLoop]: 7 mSDtfsCounter, 49 mSDsluCounter, 29 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:32,495 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 36 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:41:32,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2022-02-20 23:41:32,496 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 19. [2022-02-20 23:41:32,496 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:32,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,496 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,496 INFO L87 Difference]: Start difference. First operand 24 states. Second operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:32,497 INFO L93 Difference]: Finished difference Result 24 states and 25 transitions. [2022-02-20 23:41:32,497 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 25 transitions. [2022-02-20 23:41:32,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:32,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:32,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 24 states. [2022-02-20 23:41:32,497 INFO L87 Difference]: Start difference. First operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 24 states. [2022-02-20 23:41:32,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:32,498 INFO L93 Difference]: Finished difference Result 24 states and 25 transitions. [2022-02-20 23:41:32,502 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 25 transitions. [2022-02-20 23:41:32,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:32,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:32,502 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:32,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:32,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 18 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 20 transitions. [2022-02-20 23:41:32,503 INFO L78 Accepts]: Start accepts. Automaton has 19 states and 20 transitions. Word has length 15 [2022-02-20 23:41:32,503 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:32,503 INFO L470 AbstractCegarLoop]: Abstraction has 19 states and 20 transitions. [2022-02-20 23:41:32,504 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:32,504 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 20 transitions. [2022-02-20 23:41:32,504 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:41:32,504 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:32,504 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:32,526 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:41:32,722 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:41:32,723 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:32,723 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:32,723 INFO L85 PathProgramCache]: Analyzing trace with hash -123563366, now seen corresponding path program 2 times [2022-02-20 23:41:32,723 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:32,723 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1678248993] [2022-02-20 23:41:32,723 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:32,723 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:32,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:32,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {1535#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1535#true} is VALID [2022-02-20 23:41:32,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {1535#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1535#true} is VALID [2022-02-20 23:41:32,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {1535#true} assume !(main_~length1~0#1 < 1); {1535#true} is VALID [2022-02-20 23:41:32,864 INFO L290 TraceCheckUtils]: 3: Hoare triple {1535#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1537#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,864 INFO L290 TraceCheckUtils]: 4: Hoare triple {1537#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,865 INFO L290 TraceCheckUtils]: 6: Hoare triple {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {1538#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1539#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 2) (<= |ULTIMATE.start_main_~i~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:32,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 2) (<= |ULTIMATE.start_main_~i~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1540#(and (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1| (- 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,867 INFO L290 TraceCheckUtils]: 9: Hoare triple {1540#(and (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1| (- 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1541#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:32,867 INFO L290 TraceCheckUtils]: 10: Hoare triple {1541#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} is VALID [2022-02-20 23:41:32,868 INFO L290 TraceCheckUtils]: 11: Hoare triple {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} is VALID [2022-02-20 23:41:32,868 INFO L290 TraceCheckUtils]: 12: Hoare triple {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} is VALID [2022-02-20 23:41:32,869 INFO L290 TraceCheckUtils]: 13: Hoare triple {1542#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 1) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1543#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:32,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {1543#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1544#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:32,870 INFO L290 TraceCheckUtils]: 15: Hoare triple {1544#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1536#false} is VALID [2022-02-20 23:41:32,870 INFO L290 TraceCheckUtils]: 16: Hoare triple {1536#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1536#false} is VALID [2022-02-20 23:41:32,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {1536#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1536#false} is VALID [2022-02-20 23:41:32,870 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:32,870 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:32,870 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1678248993] [2022-02-20 23:41:32,870 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1678248993] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:32,870 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1625948116] [2022-02-20 23:41:32,871 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:32,871 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:32,871 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:32,872 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:41:32,875 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:41:32,923 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:32,923 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:32,924 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:41:32,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:32,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:33,018 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:33,977 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:33,977 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 18 [2022-02-20 23:41:34,206 INFO L290 TraceCheckUtils]: 0: Hoare triple {1535#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1535#true} is VALID [2022-02-20 23:41:34,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {1535#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1535#true} is VALID [2022-02-20 23:41:34,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {1535#true} assume !(main_~length1~0#1 < 1); {1535#true} is VALID [2022-02-20 23:41:34,213 INFO L290 TraceCheckUtils]: 3: Hoare triple {1535#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1557#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:34,213 INFO L290 TraceCheckUtils]: 4: Hoare triple {1557#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:34,213 INFO L290 TraceCheckUtils]: 5: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:34,214 INFO L290 TraceCheckUtils]: 6: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:34,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:34,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:34,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1577#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:41:34,222 INFO L290 TraceCheckUtils]: 10: Hoare triple {1577#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1581#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} is VALID [2022-02-20 23:41:34,223 INFO L290 TraceCheckUtils]: 11: Hoare triple {1581#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1585#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:34,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {1585#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1585#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:34,238 INFO L290 TraceCheckUtils]: 13: Hoare triple {1585#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1592#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} is VALID [2022-02-20 23:41:34,239 INFO L290 TraceCheckUtils]: 14: Hoare triple {1592#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (and (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:34,239 INFO L290 TraceCheckUtils]: 15: Hoare triple {1596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (and (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1600#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:34,240 INFO L290 TraceCheckUtils]: 16: Hoare triple {1600#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1604#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:34,240 INFO L290 TraceCheckUtils]: 17: Hoare triple {1604#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1536#false} is VALID [2022-02-20 23:41:34,240 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:34,240 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:34,829 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:41:34,863 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:41:34,913 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:41:34,998 INFO L290 TraceCheckUtils]: 17: Hoare triple {1608#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1536#false} is VALID [2022-02-20 23:41:34,999 INFO L290 TraceCheckUtils]: 16: Hoare triple {1612#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1608#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:34,999 INFO L290 TraceCheckUtils]: 15: Hoare triple {1616#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1612#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:35,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {1620#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1616#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:35,001 INFO L290 TraceCheckUtils]: 13: Hoare triple {1624#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1620#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} is VALID [2022-02-20 23:41:35,005 INFO L290 TraceCheckUtils]: 12: Hoare triple {1624#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1624#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:35,006 INFO L290 TraceCheckUtils]: 11: Hoare triple {1631#(or (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1624#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:35,007 INFO L290 TraceCheckUtils]: 10: Hoare triple {1635#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_16| Int)) (or (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16| 1)) 0) (<= (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1631#(or (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:35,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1635#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_16| Int)) (or (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16| 1)) 0) (<= (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_16|)))} is VALID [2022-02-20 23:41:35,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:35,010 INFO L290 TraceCheckUtils]: 7: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:35,011 INFO L290 TraceCheckUtils]: 6: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:35,011 INFO L290 TraceCheckUtils]: 5: Hoare triple {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:35,011 INFO L290 TraceCheckUtils]: 4: Hoare triple {1557#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1561#(< 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:35,012 INFO L290 TraceCheckUtils]: 3: Hoare triple {1535#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1557#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {1535#true} assume !(main_~length1~0#1 < 1); {1535#true} is VALID [2022-02-20 23:41:35,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {1535#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1535#true} is VALID [2022-02-20 23:41:35,012 INFO L290 TraceCheckUtils]: 0: Hoare triple {1535#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1535#true} is VALID [2022-02-20 23:41:35,012 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:35,013 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1625948116] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:35,013 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:35,013 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 26 [2022-02-20 23:41:35,013 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [223805017] [2022-02-20 23:41:35,013 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:35,014 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:35,014 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:35,014 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:35,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:35,126 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-02-20 23:41:35,126 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:35,126 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-02-20 23:41:35,127 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=566, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:41:35,127 INFO L87 Difference]: Start difference. First operand 19 states and 20 transitions. Second operand has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:35,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:35,526 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:35,526 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-02-20 23:41:35,527 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 18 [2022-02-20 23:41:35,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:35,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:35,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 41 transitions. [2022-02-20 23:41:35,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:35,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 41 transitions. [2022-02-20 23:41:35,528 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states and 41 transitions. [2022-02-20 23:41:35,631 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:35,632 INFO L225 Difference]: With dead ends: 38 [2022-02-20 23:41:35,632 INFO L226 Difference]: Without dead ends: 31 [2022-02-20 23:41:35,633 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 212 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=147, Invalid=975, Unknown=0, NotChecked=0, Total=1122 [2022-02-20 23:41:35,633 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 33 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 143 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 37 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:35,633 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 67 Invalid, 143 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 99 Invalid, 0 Unknown, 37 Unchecked, 0.1s Time] [2022-02-20 23:41:35,634 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-02-20 23:41:35,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 26. [2022-02-20 23:41:35,634 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:35,635 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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:41:35,635 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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:41:35,640 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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:41:35,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:35,641 INFO L93 Difference]: Finished difference Result 31 states and 32 transitions. [2022-02-20 23:41:35,641 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2022-02-20 23:41:35,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:35,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:35,641 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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) Second operand 31 states. [2022-02-20 23:41:35,641 INFO L87 Difference]: Start difference. First operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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) Second operand 31 states. [2022-02-20 23:41:35,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:35,642 INFO L93 Difference]: Finished difference Result 31 states and 32 transitions. [2022-02-20 23:41:35,642 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2022-02-20 23:41:35,642 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:35,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:35,642 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:35,642 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:35,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 25 states have (on average 1.08) internal successors, (27), 25 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:41:35,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 27 transitions. [2022-02-20 23:41:35,643 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 27 transitions. Word has length 18 [2022-02-20 23:41:35,643 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:35,643 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 27 transitions. [2022-02-20 23:41:35,643 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 1.6153846153846154) internal successors, (42), 26 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:35,643 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 27 transitions. [2022-02-20 23:41:35,644 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:41:35,644 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:35,644 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:35,663 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:35,857 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:41:35,857 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:35,858 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:35,858 INFO L85 PathProgramCache]: Analyzing trace with hash 1941489159, now seen corresponding path program 3 times [2022-02-20 23:41:35,858 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:35,858 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1919987006] [2022-02-20 23:41:35,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:35,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:35,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:36,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {1809#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1809#true} is VALID [2022-02-20 23:41:36,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {1809#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1809#true} is VALID [2022-02-20 23:41:36,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {1809#true} assume !(main_~length1~0#1 < 1); {1809#true} is VALID [2022-02-20 23:41:36,005 INFO L290 TraceCheckUtils]: 3: Hoare triple {1809#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,006 INFO L290 TraceCheckUtils]: 4: Hoare triple {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,006 INFO L290 TraceCheckUtils]: 6: Hoare triple {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {1811#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1812#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:36,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {1812#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:36,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:36,008 INFO L290 TraceCheckUtils]: 10: Hoare triple {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:36,009 INFO L290 TraceCheckUtils]: 11: Hoare triple {1813#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1814#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,009 INFO L290 TraceCheckUtils]: 12: Hoare triple {1814#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1815#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:41:36,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {1815#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1816#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:36,010 INFO L290 TraceCheckUtils]: 14: Hoare triple {1816#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:41:36,011 INFO L290 TraceCheckUtils]: 15: Hoare triple {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:41:36,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:41:36,011 INFO L290 TraceCheckUtils]: 17: Hoare triple {1817#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 2) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,012 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,012 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,012 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:36,013 INFO L290 TraceCheckUtils]: 21: Hoare triple {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:36,013 INFO L290 TraceCheckUtils]: 22: Hoare triple {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1810#false} is VALID [2022-02-20 23:41:36,013 INFO L290 TraceCheckUtils]: 23: Hoare triple {1810#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1810#false} is VALID [2022-02-20 23:41:36,013 INFO L290 TraceCheckUtils]: 24: Hoare triple {1810#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1810#false} is VALID [2022-02-20 23:41:36,013 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:36,013 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:36,013 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1919987006] [2022-02-20 23:41:36,014 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1919987006] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:36,014 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1940760248] [2022-02-20 23:41:36,014 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:41:36,014 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:36,014 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:36,016 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:41:36,023 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:41:36,070 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 23:41:36,070 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:36,071 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 36 conjunts are in the unsatisfiable core [2022-02-20 23:41:36,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:36,085 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:36,244 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:36,601 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:41:36,606 INFO L290 TraceCheckUtils]: 0: Hoare triple {1809#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1809#true} is VALID [2022-02-20 23:41:36,606 INFO L290 TraceCheckUtils]: 1: Hoare triple {1809#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1809#true} is VALID [2022-02-20 23:41:36,606 INFO L290 TraceCheckUtils]: 2: Hoare triple {1809#true} assume !(main_~length1~0#1 < 1); {1809#true} is VALID [2022-02-20 23:41:36,607 INFO L290 TraceCheckUtils]: 3: Hoare triple {1809#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,607 INFO L290 TraceCheckUtils]: 4: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,607 INFO L290 TraceCheckUtils]: 5: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,608 INFO L290 TraceCheckUtils]: 6: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,608 INFO L290 TraceCheckUtils]: 7: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1846#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:36,609 INFO L290 TraceCheckUtils]: 8: Hoare triple {1846#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:36,609 INFO L290 TraceCheckUtils]: 9: Hoare triple {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:36,610 INFO L290 TraceCheckUtils]: 10: Hoare triple {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:36,610 INFO L290 TraceCheckUtils]: 11: Hoare triple {1850#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1860#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} is VALID [2022-02-20 23:41:36,610 INFO L290 TraceCheckUtils]: 12: Hoare triple {1860#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1864#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:41:36,612 INFO L290 TraceCheckUtils]: 13: Hoare triple {1864#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1868#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,612 INFO L290 TraceCheckUtils]: 14: Hoare triple {1868#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,613 INFO L290 TraceCheckUtils]: 15: Hoare triple {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {1872#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,615 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,615 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:36,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:36,617 INFO L290 TraceCheckUtils]: 22: Hoare triple {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1810#false} is VALID [2022-02-20 23:41:36,617 INFO L290 TraceCheckUtils]: 23: Hoare triple {1810#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1810#false} is VALID [2022-02-20 23:41:36,617 INFO L290 TraceCheckUtils]: 24: Hoare triple {1810#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1810#false} is VALID [2022-02-20 23:41:36,618 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:36,618 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:36,694 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:41:36,698 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:41:36,881 INFO L290 TraceCheckUtils]: 24: Hoare triple {1810#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {1810#false} is VALID [2022-02-20 23:41:36,881 INFO L290 TraceCheckUtils]: 23: Hoare triple {1810#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1810#false} is VALID [2022-02-20 23:41:36,883 INFO L290 TraceCheckUtils]: 22: Hoare triple {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1810#false} is VALID [2022-02-20 23:41:36,884 INFO L290 TraceCheckUtils]: 21: Hoare triple {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1820#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:36,884 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1819#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:36,884 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,885 INFO L290 TraceCheckUtils]: 17: Hoare triple {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {1818#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:36,886 INFO L290 TraceCheckUtils]: 16: Hoare triple {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:36,886 INFO L290 TraceCheckUtils]: 15: Hoare triple {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:36,886 INFO L290 TraceCheckUtils]: 14: Hoare triple {1934#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {1924#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:36,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {1864#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {1934#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:36,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {1941#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1864#(and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:41:36,888 INFO L290 TraceCheckUtils]: 11: Hoare triple {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1941#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,888 INFO L290 TraceCheckUtils]: 10: Hoare triple {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} havoc main_#t~nondet7#1; {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,889 INFO L290 TraceCheckUtils]: 9: Hoare triple {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,889 INFO L290 TraceCheckUtils]: 8: Hoare triple {1846#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1945#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 2 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3)))} is VALID [2022-02-20 23:41:36,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1846#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:36,890 INFO L290 TraceCheckUtils]: 6: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,891 INFO L290 TraceCheckUtils]: 3: Hoare triple {1809#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {1833#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:36,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {1809#true} assume !(main_~length1~0#1 < 1); {1809#true} is VALID [2022-02-20 23:41:36,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {1809#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {1809#true} is VALID [2022-02-20 23:41:36,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {1809#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1809#true} is VALID [2022-02-20 23:41:36,891 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:36,891 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1940760248] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:36,891 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:36,892 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12] total 23 [2022-02-20 23:41:36,892 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1405468461] [2022-02-20 23:41:36,892 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:36,892 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:41:36,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:36,893 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:36,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:36,931 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-02-20 23:41:36,931 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:36,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-02-20 23:41:36,932 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=436, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:41:36,932 INFO L87 Difference]: Start difference. First operand 26 states and 27 transitions. Second operand has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,378 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:37,378 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:41:37,378 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:41:37,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:37,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 38 transitions. [2022-02-20 23:41:37,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 38 transitions. [2022-02-20 23:41:37,379 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 38 transitions. [2022-02-20 23:41:37,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:37,409 INFO L225 Difference]: With dead ends: 43 [2022-02-20 23:41:37,409 INFO L226 Difference]: Without dead ends: 33 [2022-02-20 23:41:37,409 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 36 SyntacticMatches, 3 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 131 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=165, Invalid=765, Unknown=0, NotChecked=0, Total=930 [2022-02-20 23:41:37,410 INFO L933 BasicCegarLoop]: 9 mSDtfsCounter, 50 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 187 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 201 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 187 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:37,410 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 97 Invalid, 201 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 187 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:41:37,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-02-20 23:41:37,411 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 30. [2022-02-20 23:41:37,411 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:37,412 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,412 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,412 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,412 INFO L93 Difference]: Finished difference Result 33 states and 34 transitions. [2022-02-20 23:41:37,412 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 34 transitions. [2022-02-20 23:41:37,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:37,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:37,413 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 33 states. [2022-02-20 23:41:37,413 INFO L87 Difference]: Start difference. First operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 33 states. [2022-02-20 23:41:37,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,413 INFO L93 Difference]: Finished difference Result 33 states and 34 transitions. [2022-02-20 23:41:37,413 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 34 transitions. [2022-02-20 23:41:37,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:37,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:37,414 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:37,414 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:37,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 29 states have (on average 1.0689655172413792) internal successors, (31), 29 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 31 transitions. [2022-02-20 23:41:37,414 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 31 transitions. Word has length 25 [2022-02-20 23:41:37,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:37,415 INFO L470 AbstractCegarLoop]: Abstraction has 30 states and 31 transitions. [2022-02-20 23:41:37,415 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.1739130434782608) internal successors, (50), 23 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:37,415 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 31 transitions. [2022-02-20 23:41:37,416 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:41:37,416 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:37,416 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:37,433 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:41:37,619 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:41:37,619 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:37,619 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:37,620 INFO L85 PathProgramCache]: Analyzing trace with hash -413257756, now seen corresponding path program 4 times [2022-02-20 23:41:37,620 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:37,620 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1541606725] [2022-02-20 23:41:37,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:37,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:37,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:37,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {2133#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2133#true} is VALID [2022-02-20 23:41:37,750 INFO L290 TraceCheckUtils]: 1: Hoare triple {2133#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2133#true} is VALID [2022-02-20 23:41:37,750 INFO L290 TraceCheckUtils]: 2: Hoare triple {2133#true} assume !(main_~length1~0#1 < 1); {2133#true} is VALID [2022-02-20 23:41:37,750 INFO L290 TraceCheckUtils]: 3: Hoare triple {2133#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,751 INFO L290 TraceCheckUtils]: 4: Hoare triple {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,751 INFO L290 TraceCheckUtils]: 5: Hoare triple {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,751 INFO L290 TraceCheckUtils]: 6: Hoare triple {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,752 INFO L290 TraceCheckUtils]: 7: Hoare triple {2135#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,752 INFO L290 TraceCheckUtils]: 8: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,753 INFO L290 TraceCheckUtils]: 9: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,753 INFO L290 TraceCheckUtils]: 10: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,754 INFO L290 TraceCheckUtils]: 11: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:37,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:37,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:37,755 INFO L290 TraceCheckUtils]: 14: Hoare triple {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:37,755 INFO L290 TraceCheckUtils]: 15: Hoare triple {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:37,756 INFO L290 TraceCheckUtils]: 16: Hoare triple {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:37,756 INFO L290 TraceCheckUtils]: 17: Hoare triple {2138#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2139#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:41:37,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {2139#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,758 INFO L290 TraceCheckUtils]: 21: Hoare triple {2140#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,759 INFO L290 TraceCheckUtils]: 23: Hoare triple {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {2141#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,760 INFO L290 TraceCheckUtils]: 26: Hoare triple {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,760 INFO L290 TraceCheckUtils]: 27: Hoare triple {2142#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2143#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:37,761 INFO L290 TraceCheckUtils]: 28: Hoare triple {2143#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2134#false} is VALID [2022-02-20 23:41:37,761 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 1 proven. 26 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:37,761 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:37,762 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1541606725] [2022-02-20 23:41:37,762 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1541606725] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:37,762 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [3469278] [2022-02-20 23:41:37,762 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:41:37,762 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:37,762 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:37,812 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:41:37,812 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:41:37,857 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:41:37,858 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:37,863 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 43 conjunts are in the unsatisfiable core [2022-02-20 23:41:37,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:37,876 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:37,893 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:41:38,073 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:41:38,299 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:38,300 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 19 [2022-02-20 23:41:38,425 INFO L290 TraceCheckUtils]: 0: Hoare triple {2133#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2133#true} is VALID [2022-02-20 23:41:38,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {2133#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2133#true} is VALID [2022-02-20 23:41:38,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {2133#true} assume !(main_~length1~0#1 < 1); {2133#true} is VALID [2022-02-20 23:41:38,426 INFO L290 TraceCheckUtils]: 3: Hoare triple {2133#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,427 INFO L290 TraceCheckUtils]: 4: Hoare triple {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {2156#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,443 INFO L290 TraceCheckUtils]: 8: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,445 INFO L290 TraceCheckUtils]: 10: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,446 INFO L290 TraceCheckUtils]: 11: Hoare triple {2136#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,446 INFO L290 TraceCheckUtils]: 12: Hoare triple {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,447 INFO L290 TraceCheckUtils]: 13: Hoare triple {2137#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,447 INFO L290 TraceCheckUtils]: 14: Hoare triple {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,448 INFO L290 TraceCheckUtils]: 15: Hoare triple {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,449 INFO L290 TraceCheckUtils]: 17: Hoare triple {2187#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2200#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,450 INFO L290 TraceCheckUtils]: 18: Hoare triple {2200#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2204#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,450 INFO L290 TraceCheckUtils]: 19: Hoare triple {2204#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2208#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {2208#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2208#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,451 INFO L290 TraceCheckUtils]: 21: Hoare triple {2208#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,452 INFO L290 TraceCheckUtils]: 22: Hoare triple {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,452 INFO L290 TraceCheckUtils]: 23: Hoare triple {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:41:38,453 INFO L290 TraceCheckUtils]: 24: Hoare triple {2215#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2225#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:38,454 INFO L290 TraceCheckUtils]: 25: Hoare triple {2225#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2229#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:38,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {2229#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2233#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (not (= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))))} is VALID [2022-02-20 23:41:38,455 INFO L290 TraceCheckUtils]: 27: Hoare triple {2233#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (not (= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2237#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:38,455 INFO L290 TraceCheckUtils]: 28: Hoare triple {2237#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (<= 3 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2134#false} is VALID [2022-02-20 23:41:38,455 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 8 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:38,455 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:39,001 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:41:39,025 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:41:39,728 INFO L290 TraceCheckUtils]: 28: Hoare triple {2241#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2134#false} is VALID [2022-02-20 23:41:39,729 INFO L290 TraceCheckUtils]: 27: Hoare triple {2245#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2241#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:39,729 INFO L290 TraceCheckUtils]: 26: Hoare triple {2249#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2245#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:39,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {2253#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2249#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:39,730 INFO L290 TraceCheckUtils]: 24: Hoare triple {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2253#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} is VALID [2022-02-20 23:41:39,732 INFO L290 TraceCheckUtils]: 23: Hoare triple {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:39,733 INFO L290 TraceCheckUtils]: 22: Hoare triple {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:39,733 INFO L290 TraceCheckUtils]: 21: Hoare triple {2267#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2257#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:39,734 INFO L290 TraceCheckUtils]: 20: Hoare triple {2267#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2267#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:39,734 INFO L290 TraceCheckUtils]: 19: Hoare triple {2274#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2267#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:39,735 INFO L290 TraceCheckUtils]: 18: Hoare triple {2278#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_29| Int)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ 2 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|)) (<= (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2274#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:39,736 INFO L290 TraceCheckUtils]: 17: Hoare triple {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2278#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_29| Int)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ 2 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29|)) (<= (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_29| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:41:39,737 INFO L290 TraceCheckUtils]: 16: Hoare triple {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:41:39,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:41:39,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} havoc main_#t~nondet7#1; {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:41:39,749 INFO L290 TraceCheckUtils]: 13: Hoare triple {2295#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2282#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:41:39,750 INFO L290 TraceCheckUtils]: 12: Hoare triple {2295#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2295#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,751 INFO L290 TraceCheckUtils]: 11: Hoare triple {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2295#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,752 INFO L290 TraceCheckUtils]: 10: Hoare triple {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} havoc main_#t~nondet7#1; {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,752 INFO L290 TraceCheckUtils]: 9: Hoare triple {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,753 INFO L290 TraceCheckUtils]: 8: Hoare triple {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2302#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:41:39,754 INFO L290 TraceCheckUtils]: 6: Hoare triple {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet7#1; {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,756 INFO L290 TraceCheckUtils]: 4: Hoare triple {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,757 INFO L290 TraceCheckUtils]: 3: Hoare triple {2133#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2315#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {2133#true} assume !(main_~length1~0#1 < 1); {2133#true} is VALID [2022-02-20 23:41:39,757 INFO L290 TraceCheckUtils]: 1: Hoare triple {2133#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2133#true} is VALID [2022-02-20 23:41:39,757 INFO L290 TraceCheckUtils]: 0: Hoare triple {2133#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2133#true} is VALID [2022-02-20 23:41:39,757 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 15 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:39,757 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [3469278] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:39,757 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:39,757 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 13, 13] total 32 [2022-02-20 23:41:39,758 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2038948216] [2022-02-20 23:41:39,758 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:39,758 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 29 [2022-02-20 23:41:39,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:39,758 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:39,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:39,814 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-02-20 23:41:39,814 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:39,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-02-20 23:41:39,814 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=913, Unknown=0, NotChecked=0, Total=1056 [2022-02-20 23:41:39,815 INFO L87 Difference]: Start difference. First operand 30 states and 31 transitions. Second operand has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:40,754 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:40,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-02-20 23:41:40,754 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 29 [2022-02-20 23:41:40,754 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:40,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 41 transitions. [2022-02-20 23:41:40,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 41 transitions. [2022-02-20 23:41:40,756 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 41 transitions. [2022-02-20 23:41:40,788 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:40,789 INFO L225 Difference]: With dead ends: 38 [2022-02-20 23:41:40,789 INFO L226 Difference]: Without dead ends: 38 [2022-02-20 23:41:40,789 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 250 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=399, Invalid=1581, Unknown=0, NotChecked=0, Total=1980 [2022-02-20 23:41:40,790 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 107 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 259 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 107 SdHoareTripleChecker+Valid, 99 SdHoareTripleChecker+Invalid, 317 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 259 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 8 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:40,790 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [107 Valid, 99 Invalid, 317 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 259 Invalid, 0 Unknown, 8 Unchecked, 0.2s Time] [2022-02-20 23:41:40,790 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-02-20 23:41:40,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-02-20 23:41:40,791 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:40,792 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,792 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,792 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:40,792 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:40,793 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 39 transitions. [2022-02-20 23:41:40,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:40,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:40,793 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 38 states. [2022-02-20 23:41:40,793 INFO L87 Difference]: Start difference. First operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 38 states. [2022-02-20 23:41:40,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:40,794 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:40,794 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 39 transitions. [2022-02-20 23:41:40,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:40,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:40,794 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:40,794 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:40,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 1.0571428571428572) internal successors, (37), 35 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 37 transitions. [2022-02-20 23:41:40,795 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 37 transitions. Word has length 29 [2022-02-20 23:41:40,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:40,795 INFO L470 AbstractCegarLoop]: Abstraction has 36 states and 37 transitions. [2022-02-20 23:41:40,795 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 32 states have (on average 2.40625) internal successors, (77), 33 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:40,795 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2022-02-20 23:41:40,795 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 23:41:40,795 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:40,796 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:40,812 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:41:41,007 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:41:41,008 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:41,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:41,008 INFO L85 PathProgramCache]: Analyzing trace with hash -1453066652, now seen corresponding path program 5 times [2022-02-20 23:41:41,008 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:41,008 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [204863105] [2022-02-20 23:41:41,008 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:41,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:41,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:41,177 INFO L290 TraceCheckUtils]: 0: Hoare triple {2510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2510#true} is VALID [2022-02-20 23:41:41,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {2510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2510#true} is VALID [2022-02-20 23:41:41,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {2510#true} assume !(main_~length1~0#1 < 1); {2510#true} is VALID [2022-02-20 23:41:41,178 INFO L290 TraceCheckUtils]: 3: Hoare triple {2510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,178 INFO L290 TraceCheckUtils]: 4: Hoare triple {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,179 INFO L290 TraceCheckUtils]: 6: Hoare triple {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,179 INFO L290 TraceCheckUtils]: 7: Hoare triple {2512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,180 INFO L290 TraceCheckUtils]: 8: Hoare triple {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,180 INFO L290 TraceCheckUtils]: 9: Hoare triple {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,186 INFO L290 TraceCheckUtils]: 10: Hoare triple {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,187 INFO L290 TraceCheckUtils]: 11: Hoare triple {2513#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,187 INFO L290 TraceCheckUtils]: 12: Hoare triple {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,194 INFO L290 TraceCheckUtils]: 15: Hoare triple {2514#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2515#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,195 INFO L290 TraceCheckUtils]: 16: Hoare triple {2515#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2516#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:41,195 INFO L290 TraceCheckUtils]: 17: Hoare triple {2516#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,196 INFO L290 TraceCheckUtils]: 18: Hoare triple {2517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,196 INFO L290 TraceCheckUtils]: 19: Hoare triple {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,196 INFO L290 TraceCheckUtils]: 20: Hoare triple {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,197 INFO L290 TraceCheckUtils]: 21: Hoare triple {2518#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:41,197 INFO L290 TraceCheckUtils]: 22: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:41,197 INFO L290 TraceCheckUtils]: 23: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:41,198 INFO L290 TraceCheckUtils]: 24: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:41,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:41,199 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:41,199 INFO L290 TraceCheckUtils]: 27: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:41,199 INFO L290 TraceCheckUtils]: 28: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:41,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:41,200 INFO L290 TraceCheckUtils]: 30: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2522#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} is VALID [2022-02-20 23:41:41,200 INFO L290 TraceCheckUtils]: 31: Hoare triple {2522#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2511#false} is VALID [2022-02-20 23:41:41,200 INFO L290 TraceCheckUtils]: 32: Hoare triple {2511#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2511#false} is VALID [2022-02-20 23:41:41,201 INFO L290 TraceCheckUtils]: 33: Hoare triple {2511#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2511#false} is VALID [2022-02-20 23:41:41,201 INFO L290 TraceCheckUtils]: 34: Hoare triple {2511#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2511#false} is VALID [2022-02-20 23:41:41,201 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 25 proven. 25 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:41,201 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:41,201 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [204863105] [2022-02-20 23:41:41,201 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [204863105] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:41,201 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1200478125] [2022-02-20 23:41:41,201 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:41:41,201 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:41,201 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:41,212 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:41:41,212 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:41:41,273 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-02-20 23:41:41,274 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:41,274 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 29 conjunts are in the unsatisfiable core [2022-02-20 23:41:41,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:41,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:41,326 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:41:41,745 INFO L290 TraceCheckUtils]: 0: Hoare triple {2510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2510#true} is VALID [2022-02-20 23:41:41,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {2510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2510#true} is VALID [2022-02-20 23:41:41,745 INFO L290 TraceCheckUtils]: 2: Hoare triple {2510#true} assume !(main_~length1~0#1 < 1); {2510#true} is VALID [2022-02-20 23:41:41,746 INFO L290 TraceCheckUtils]: 3: Hoare triple {2510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:41,746 INFO L290 TraceCheckUtils]: 4: Hoare triple {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:41,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:41,747 INFO L290 TraceCheckUtils]: 6: Hoare triple {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:41,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {2535#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,748 INFO L290 TraceCheckUtils]: 8: Hoare triple {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,748 INFO L290 TraceCheckUtils]: 9: Hoare triple {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,748 INFO L290 TraceCheckUtils]: 10: Hoare triple {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:41,749 INFO L290 TraceCheckUtils]: 11: Hoare triple {2548#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} is VALID [2022-02-20 23:41:41,749 INFO L290 TraceCheckUtils]: 12: Hoare triple {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} is VALID [2022-02-20 23:41:41,749 INFO L290 TraceCheckUtils]: 13: Hoare triple {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} is VALID [2022-02-20 23:41:41,750 INFO L290 TraceCheckUtils]: 14: Hoare triple {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} havoc main_#t~nondet7#1; {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} is VALID [2022-02-20 23:41:41,750 INFO L290 TraceCheckUtils]: 15: Hoare triple {2561#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2574#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:41:41,751 INFO L290 TraceCheckUtils]: 16: Hoare triple {2574#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} is VALID [2022-02-20 23:41:41,751 INFO L290 TraceCheckUtils]: 17: Hoare triple {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} is VALID [2022-02-20 23:41:41,751 INFO L290 TraceCheckUtils]: 18: Hoare triple {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2585#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4)} is VALID [2022-02-20 23:41:41,752 INFO L290 TraceCheckUtils]: 19: Hoare triple {2585#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2589#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,752 INFO L290 TraceCheckUtils]: 20: Hoare triple {2589#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2589#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,752 INFO L290 TraceCheckUtils]: 21: Hoare triple {2589#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,753 INFO L290 TraceCheckUtils]: 22: Hoare triple {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,753 INFO L290 TraceCheckUtils]: 23: Hoare triple {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,754 INFO L290 TraceCheckUtils]: 24: Hoare triple {2596#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:41,754 INFO L290 TraceCheckUtils]: 25: Hoare triple {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:41,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:41,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {2606#(and (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,756 INFO L290 TraceCheckUtils]: 30: Hoare triple {2616#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2626#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} is VALID [2022-02-20 23:41:41,756 INFO L290 TraceCheckUtils]: 31: Hoare triple {2626#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2511#false} is VALID [2022-02-20 23:41:41,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {2511#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2511#false} is VALID [2022-02-20 23:41:41,757 INFO L290 TraceCheckUtils]: 33: Hoare triple {2511#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2511#false} is VALID [2022-02-20 23:41:41,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {2511#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2511#false} is VALID [2022-02-20 23:41:41,757 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 35 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:41,757 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:42,135 INFO L290 TraceCheckUtils]: 34: Hoare triple {2511#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2511#false} is VALID [2022-02-20 23:41:42,135 INFO L290 TraceCheckUtils]: 33: Hoare triple {2511#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2511#false} is VALID [2022-02-20 23:41:42,135 INFO L290 TraceCheckUtils]: 32: Hoare triple {2511#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2511#false} is VALID [2022-02-20 23:41:42,136 INFO L290 TraceCheckUtils]: 31: Hoare triple {2522#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2511#false} is VALID [2022-02-20 23:41:42,136 INFO L290 TraceCheckUtils]: 30: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2522#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} is VALID [2022-02-20 23:41:42,137 INFO L290 TraceCheckUtils]: 29: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:42,137 INFO L290 TraceCheckUtils]: 28: Hoare triple {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:42,137 INFO L290 TraceCheckUtils]: 27: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2521#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:41:42,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:42,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:42,138 INFO L290 TraceCheckUtils]: 24: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2520#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:41:42,139 INFO L290 TraceCheckUtils]: 23: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:42,139 INFO L290 TraceCheckUtils]: 22: Hoare triple {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:42,140 INFO L290 TraceCheckUtils]: 21: Hoare triple {2678#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2519#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:41:42,140 INFO L290 TraceCheckUtils]: 20: Hoare triple {2678#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2678#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:41:42,140 INFO L290 TraceCheckUtils]: 19: Hoare triple {2585#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2678#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:41:42,141 INFO L290 TraceCheckUtils]: 18: Hoare triple {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2585#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4)} is VALID [2022-02-20 23:41:42,141 INFO L290 TraceCheckUtils]: 17: Hoare triple {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} is VALID [2022-02-20 23:41:42,141 INFO L290 TraceCheckUtils]: 16: Hoare triple {2694#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2578#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4)} is VALID [2022-02-20 23:41:42,142 INFO L290 TraceCheckUtils]: 15: Hoare triple {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2694#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} havoc main_#t~nondet7#1; {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,143 INFO L290 TraceCheckUtils]: 13: Hoare triple {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,143 INFO L290 TraceCheckUtils]: 12: Hoare triple {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,143 INFO L290 TraceCheckUtils]: 11: Hoare triple {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2698#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,144 INFO L290 TraceCheckUtils]: 10: Hoare triple {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} havoc main_#t~nondet7#1; {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,145 INFO L290 TraceCheckUtils]: 7: Hoare triple {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2711#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,145 INFO L290 TraceCheckUtils]: 6: Hoare triple {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} havoc main_#t~nondet7#1; {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,146 INFO L290 TraceCheckUtils]: 4: Hoare triple {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,146 INFO L290 TraceCheckUtils]: 3: Hoare triple {2510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2724#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 4))} is VALID [2022-02-20 23:41:42,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {2510#true} assume !(main_~length1~0#1 < 1); {2510#true} is VALID [2022-02-20 23:41:42,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {2510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2510#true} is VALID [2022-02-20 23:41:42,146 INFO L290 TraceCheckUtils]: 0: Hoare triple {2510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2510#true} is VALID [2022-02-20 23:41:42,147 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 31 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:42,147 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1200478125] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:42,147 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:42,147 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 29 [2022-02-20 23:41:42,147 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [908716653] [2022-02-20 23:41:42,147 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:42,148 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 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 35 [2022-02-20 23:41:42,148 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:42,148 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,199 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:41:42,200 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-02-20 23:41:42,200 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:42,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-02-20 23:41:42,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=161, Invalid=651, Unknown=0, NotChecked=0, Total=812 [2022-02-20 23:41:42,201 INFO L87 Difference]: Start difference. First operand 36 states and 37 transitions. Second operand has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:42,599 INFO L93 Difference]: Finished difference Result 58 states and 59 transitions. [2022-02-20 23:41:42,599 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:41:42,599 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 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 35 [2022-02-20 23:41:42,599 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:42,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 47 transitions. [2022-02-20 23:41:42,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 47 transitions. [2022-02-20 23:41:42,601 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 47 transitions. [2022-02-20 23:41:42,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:42,652 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:41:42,652 INFO L226 Difference]: Without dead ends: 43 [2022-02-20 23:41:42,653 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 249 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=274, Invalid=916, Unknown=0, NotChecked=0, Total=1190 [2022-02-20 23:41:42,653 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 50 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 198 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:42,655 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 77 Invalid, 198 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:41:42,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-02-20 23:41:42,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-02-20 23:41:42,657 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:42,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,657 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,658 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:42,658 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:42,658 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 44 transitions. [2022-02-20 23:41:42,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:42,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:42,659 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 43 states. [2022-02-20 23:41:42,659 INFO L87 Difference]: Start difference. First operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 43 states. [2022-02-20 23:41:42,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:42,659 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:42,660 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 44 transitions. [2022-02-20 23:41:42,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:42,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:42,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:42,660 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:42,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 39 states have (on average 1.0512820512820513) internal successors, (41), 39 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 41 transitions. [2022-02-20 23:41:42,661 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 41 transitions. Word has length 35 [2022-02-20 23:41:42,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:42,661 INFO L470 AbstractCegarLoop]: Abstraction has 40 states and 41 transitions. [2022-02-20 23:41:42,661 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 2.793103448275862) internal successors, (81), 29 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:42,661 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 41 transitions. [2022-02-20 23:41:42,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 23:41:42,662 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:42,662 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:42,679 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:41:42,867 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:41:42,867 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:42,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:42,868 INFO L85 PathProgramCache]: Analyzing trace with hash -376934399, now seen corresponding path program 6 times [2022-02-20 23:41:42,868 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:42,868 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1688111041] [2022-02-20 23:41:42,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:42,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:42,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:43,109 INFO L290 TraceCheckUtils]: 0: Hoare triple {2941#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2941#true} is VALID [2022-02-20 23:41:43,109 INFO L290 TraceCheckUtils]: 1: Hoare triple {2941#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2941#true} is VALID [2022-02-20 23:41:43,109 INFO L290 TraceCheckUtils]: 2: Hoare triple {2941#true} assume !(main_~length1~0#1 < 1); {2941#true} is VALID [2022-02-20 23:41:43,109 INFO L290 TraceCheckUtils]: 3: Hoare triple {2941#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,110 INFO L290 TraceCheckUtils]: 4: Hoare triple {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,110 INFO L290 TraceCheckUtils]: 6: Hoare triple {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,111 INFO L290 TraceCheckUtils]: 7: Hoare triple {2943#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:43,111 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:43,112 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:43,112 INFO L290 TraceCheckUtils]: 10: Hoare triple {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:43,112 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,113 INFO L290 TraceCheckUtils]: 12: Hoare triple {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,113 INFO L290 TraceCheckUtils]: 13: Hoare triple {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,114 INFO L290 TraceCheckUtils]: 14: Hoare triple {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,114 INFO L290 TraceCheckUtils]: 15: Hoare triple {2945#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2946#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,114 INFO L290 TraceCheckUtils]: 16: Hoare triple {2946#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,115 INFO L290 TraceCheckUtils]: 17: Hoare triple {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,115 INFO L290 TraceCheckUtils]: 18: Hoare triple {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,116 INFO L290 TraceCheckUtils]: 19: Hoare triple {2947#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2948#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,116 INFO L290 TraceCheckUtils]: 20: Hoare triple {2948#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2949#(and (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,117 INFO L290 TraceCheckUtils]: 21: Hoare triple {2949#(and (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {2950#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,117 INFO L290 TraceCheckUtils]: 22: Hoare triple {2950#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,117 INFO L290 TraceCheckUtils]: 23: Hoare triple {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,118 INFO L290 TraceCheckUtils]: 24: Hoare triple {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:41:43,118 INFO L290 TraceCheckUtils]: 25: Hoare triple {2951#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 4) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:43,119 INFO L290 TraceCheckUtils]: 26: Hoare triple {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:43,119 INFO L290 TraceCheckUtils]: 27: Hoare triple {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:43,119 INFO L290 TraceCheckUtils]: 28: Hoare triple {2952#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:43,120 INFO L290 TraceCheckUtils]: 29: Hoare triple {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:43,120 INFO L290 TraceCheckUtils]: 30: Hoare triple {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:43,120 INFO L290 TraceCheckUtils]: 31: Hoare triple {2953#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:43,121 INFO L290 TraceCheckUtils]: 32: Hoare triple {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:43,121 INFO L290 TraceCheckUtils]: 33: Hoare triple {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:43,121 INFO L290 TraceCheckUtils]: 34: Hoare triple {2954#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2955#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:43,122 INFO L290 TraceCheckUtils]: 35: Hoare triple {2955#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {2956#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:43,122 INFO L290 TraceCheckUtils]: 36: Hoare triple {2956#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {2942#false} is VALID [2022-02-20 23:41:43,122 INFO L290 TraceCheckUtils]: 37: Hoare triple {2942#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {2942#false} is VALID [2022-02-20 23:41:43,122 INFO L290 TraceCheckUtils]: 38: Hoare triple {2942#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2942#false} is VALID [2022-02-20 23:41:43,123 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 9 proven. 54 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:43,123 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:43,123 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1688111041] [2022-02-20 23:41:43,123 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1688111041] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:43,123 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [359338383] [2022-02-20 23:41:43,123 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:41:43,123 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:43,123 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:43,124 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:41:43,125 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:41:43,189 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-02-20 23:41:43,189 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:43,190 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 45 conjunts are in the unsatisfiable core [2022-02-20 23:41:43,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:43,201 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:43,378 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:45,902 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:45,902 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 18 [2022-02-20 23:41:46,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {2941#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2941#true} is VALID [2022-02-20 23:41:46,128 INFO L290 TraceCheckUtils]: 1: Hoare triple {2941#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2941#true} is VALID [2022-02-20 23:41:46,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {2941#true} assume !(main_~length1~0#1 < 1); {2941#true} is VALID [2022-02-20 23:41:46,134 INFO L290 TraceCheckUtils]: 3: Hoare triple {2941#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,134 INFO L290 TraceCheckUtils]: 4: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,135 INFO L290 TraceCheckUtils]: 6: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,135 INFO L290 TraceCheckUtils]: 8: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,136 INFO L290 TraceCheckUtils]: 10: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,136 INFO L290 TraceCheckUtils]: 11: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,137 INFO L290 TraceCheckUtils]: 12: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,137 INFO L290 TraceCheckUtils]: 13: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,137 INFO L290 TraceCheckUtils]: 14: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,137 INFO L290 TraceCheckUtils]: 15: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3008#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:46,138 INFO L290 TraceCheckUtils]: 16: Hoare triple {3008#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:46,138 INFO L290 TraceCheckUtils]: 17: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:46,138 INFO L290 TraceCheckUtils]: 18: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:46,139 INFO L290 TraceCheckUtils]: 19: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:46,139 INFO L290 TraceCheckUtils]: 20: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:46,140 INFO L290 TraceCheckUtils]: 21: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {3028#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 4 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:41:46,143 INFO L290 TraceCheckUtils]: 22: Hoare triple {3028#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (< 4 |ULTIMATE.start_main_~length1~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} is VALID [2022-02-20 23:41:46,151 INFO L290 TraceCheckUtils]: 23: Hoare triple {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} is VALID [2022-02-20 23:41:46,153 INFO L290 TraceCheckUtils]: 24: Hoare triple {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} is VALID [2022-02-20 23:41:46,154 INFO L290 TraceCheckUtils]: 25: Hoare triple {3032#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3042#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1))))} is VALID [2022-02-20 23:41:46,156 INFO L290 TraceCheckUtils]: 26: Hoare triple {3042#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3046#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:46,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {3046#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3046#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:46,158 INFO L290 TraceCheckUtils]: 28: Hoare triple {3046#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} is VALID [2022-02-20 23:41:46,160 INFO L290 TraceCheckUtils]: 29: Hoare triple {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} is VALID [2022-02-20 23:41:46,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} is VALID [2022-02-20 23:41:46,163 INFO L290 TraceCheckUtils]: 31: Hoare triple {3053#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:46,164 INFO L290 TraceCheckUtils]: 32: Hoare triple {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:46,169 INFO L290 TraceCheckUtils]: 33: Hoare triple {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:46,170 INFO L290 TraceCheckUtils]: 34: Hoare triple {3063#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3073#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))))} is VALID [2022-02-20 23:41:46,171 INFO L290 TraceCheckUtils]: 35: Hoare triple {3073#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3077#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (and (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:46,171 INFO L290 TraceCheckUtils]: 36: Hoare triple {3077#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (and (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3081#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:46,172 INFO L290 TraceCheckUtils]: 37: Hoare triple {3081#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3085#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:46,172 INFO L290 TraceCheckUtils]: 38: Hoare triple {3085#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2942#false} is VALID [2022-02-20 23:41:46,173 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 15 proven. 48 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:46,173 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:47,215 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:41:47,249 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:41:47,317 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:41:47,449 INFO L290 TraceCheckUtils]: 38: Hoare triple {3089#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {2942#false} is VALID [2022-02-20 23:41:47,450 INFO L290 TraceCheckUtils]: 37: Hoare triple {3093#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3089#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:47,450 INFO L290 TraceCheckUtils]: 36: Hoare triple {3097#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3093#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:47,451 INFO L290 TraceCheckUtils]: 35: Hoare triple {3101#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3097#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,452 INFO L290 TraceCheckUtils]: 34: Hoare triple {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3101#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} is VALID [2022-02-20 23:41:47,452 INFO L290 TraceCheckUtils]: 33: Hoare triple {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:47,452 INFO L290 TraceCheckUtils]: 32: Hoare triple {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:47,453 INFO L290 TraceCheckUtils]: 31: Hoare triple {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3105#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:47,453 INFO L290 TraceCheckUtils]: 30: Hoare triple {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,454 INFO L290 TraceCheckUtils]: 29: Hoare triple {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,454 INFO L290 TraceCheckUtils]: 28: Hoare triple {3125#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3115#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {3125#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3125#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} is VALID [2022-02-20 23:41:47,460 INFO L290 TraceCheckUtils]: 26: Hoare triple {3132#(or (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3125#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} is VALID [2022-02-20 23:41:47,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3132#(or (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:41:47,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,462 INFO L290 TraceCheckUtils]: 23: Hoare triple {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {3146#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {3136#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (not (<= |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:41:47,463 INFO L290 TraceCheckUtils]: 21: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {3146#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_49| Int)) (or (<= (+ 5 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ 3 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) 0) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) |v_ULTIMATE.start_cstrlen_~s~0#1.offset_49|)))} is VALID [2022-02-20 23:41:47,463 INFO L290 TraceCheckUtils]: 20: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:47,463 INFO L290 TraceCheckUtils]: 19: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:47,464 INFO L290 TraceCheckUtils]: 18: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:47,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:47,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {3008#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3012#(< 4 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:47,465 INFO L290 TraceCheckUtils]: 15: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3008#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,465 INFO L290 TraceCheckUtils]: 14: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,465 INFO L290 TraceCheckUtils]: 13: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,465 INFO L290 TraceCheckUtils]: 12: Hoare triple {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,466 INFO L290 TraceCheckUtils]: 11: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2995#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,466 INFO L290 TraceCheckUtils]: 10: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,466 INFO L290 TraceCheckUtils]: 9: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2982#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,467 INFO L290 TraceCheckUtils]: 6: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,467 INFO L290 TraceCheckUtils]: 5: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,468 INFO L290 TraceCheckUtils]: 4: Hoare triple {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,468 INFO L290 TraceCheckUtils]: 3: Hoare triple {2941#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {2969#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:47,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {2941#true} assume !(main_~length1~0#1 < 1); {2941#true} is VALID [2022-02-20 23:41:47,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {2941#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {2941#true} is VALID [2022-02-20 23:41:47,468 INFO L290 TraceCheckUtils]: 0: Hoare triple {2941#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2941#true} is VALID [2022-02-20 23:41:47,469 INFO L134 CoverageAnalysis]: Checked inductivity of 63 backedges. 15 proven. 48 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:47,470 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [359338383] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:47,470 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:47,470 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16, 16] total 41 [2022-02-20 23:41:47,471 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [76441867] [2022-02-20 23:41:47,471 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:47,472 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 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 39 [2022-02-20 23:41:47,472 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:47,472 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:47,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:47,622 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-02-20 23:41:47,622 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:47,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-02-20 23:41:47,622 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=144, Invalid=1496, Unknown=0, NotChecked=0, Total=1640 [2022-02-20 23:41:47,623 INFO L87 Difference]: Start difference. First operand 40 states and 41 transitions. Second operand has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,643 INFO L93 Difference]: Finished difference Result 68 states and 69 transitions. [2022-02-20 23:41:54,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-02-20 23:41:54,643 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 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 39 [2022-02-20 23:41:54,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:54,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 71 transitions. [2022-02-20 23:41:54,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 71 transitions. [2022-02-20 23:41:54,645 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 28 states and 71 transitions. [2022-02-20 23:41:54,738 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:54,741 INFO L225 Difference]: With dead ends: 68 [2022-02-20 23:41:54,741 INFO L226 Difference]: Without dead ends: 52 [2022-02-20 23:41:54,741 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 57 SyntacticMatches, 11 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 686 ImplicationChecksByTransitivity, 7.2s TimeCoverageRelationStatistics Valid=349, Invalid=3073, Unknown=0, NotChecked=0, Total=3422 [2022-02-20 23:41:54,742 INFO L933 BasicCegarLoop]: 13 mSDtfsCounter, 54 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 270 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 252 SdHoareTripleChecker+Invalid, 403 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 270 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 125 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:54,742 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 252 Invalid, 403 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 270 Invalid, 0 Unknown, 125 Unchecked, 0.2s Time] [2022-02-20 23:41:54,742 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-02-20 23:41:54,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 47. [2022-02-20 23:41:54,743 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:54,744 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,744 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,744 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,745 INFO L93 Difference]: Finished difference Result 52 states and 53 transitions. [2022-02-20 23:41:54,745 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 53 transitions. [2022-02-20 23:41:54,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:54,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:54,745 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 52 states. [2022-02-20 23:41:54,745 INFO L87 Difference]: Start difference. First operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 52 states. [2022-02-20 23:41:54,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,746 INFO L93 Difference]: Finished difference Result 52 states and 53 transitions. [2022-02-20 23:41:54,746 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 53 transitions. [2022-02-20 23:41:54,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:54,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:54,746 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:54,746 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:54,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 46 states have (on average 1.0434782608695652) internal successors, (48), 46 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 48 transitions. [2022-02-20 23:41:54,747 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 48 transitions. Word has length 39 [2022-02-20 23:41:54,747 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:54,747 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 48 transitions. [2022-02-20 23:41:54,747 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 41 states have (on average 2.268292682926829) internal successors, (93), 41 states have internal predecessors, (93), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:54,748 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 48 transitions. [2022-02-20 23:41:54,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 23:41:54,749 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:54,749 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:54,767 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-02-20 23:41:54,950 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:41:54,950 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:54,950 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:54,950 INFO L85 PathProgramCache]: Analyzing trace with hash -1358190938, now seen corresponding path program 7 times [2022-02-20 23:41:54,951 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:54,951 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [837212429] [2022-02-20 23:41:54,951 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:54,951 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:54,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:55,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {3482#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3482#true} is VALID [2022-02-20 23:41:55,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {3482#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {3482#true} is VALID [2022-02-20 23:41:55,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {3482#true} assume !(main_~length1~0#1 < 1); {3482#true} is VALID [2022-02-20 23:41:55,210 INFO L290 TraceCheckUtils]: 3: Hoare triple {3482#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,211 INFO L290 TraceCheckUtils]: 4: Hoare triple {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,211 INFO L290 TraceCheckUtils]: 5: Hoare triple {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,212 INFO L290 TraceCheckUtils]: 6: Hoare triple {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,213 INFO L290 TraceCheckUtils]: 7: Hoare triple {3484#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:55,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:55,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:55,214 INFO L290 TraceCheckUtils]: 10: Hoare triple {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:55,214 INFO L290 TraceCheckUtils]: 11: Hoare triple {3485#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,216 INFO L290 TraceCheckUtils]: 15: Hoare triple {3486#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,217 INFO L290 TraceCheckUtils]: 17: Hoare triple {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,218 INFO L290 TraceCheckUtils]: 19: Hoare triple {3487#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3488#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,218 INFO L290 TraceCheckUtils]: 20: Hoare triple {3488#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,219 INFO L290 TraceCheckUtils]: 21: Hoare triple {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,219 INFO L290 TraceCheckUtils]: 22: Hoare triple {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,220 INFO L290 TraceCheckUtils]: 23: Hoare triple {3489#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3490#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:41:55,220 INFO L290 TraceCheckUtils]: 24: Hoare triple {3490#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3491#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:55,221 INFO L290 TraceCheckUtils]: 25: Hoare triple {3491#(and (<= 6 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {3492#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:55,221 INFO L290 TraceCheckUtils]: 26: Hoare triple {3492#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} is VALID [2022-02-20 23:41:55,222 INFO L290 TraceCheckUtils]: 27: Hoare triple {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} is VALID [2022-02-20 23:41:55,222 INFO L290 TraceCheckUtils]: 28: Hoare triple {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} is VALID [2022-02-20 23:41:55,222 INFO L290 TraceCheckUtils]: 29: Hoare triple {3493#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 5) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,223 INFO L290 TraceCheckUtils]: 31: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,223 INFO L290 TraceCheckUtils]: 32: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,224 INFO L290 TraceCheckUtils]: 33: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,224 INFO L290 TraceCheckUtils]: 34: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,224 INFO L290 TraceCheckUtils]: 35: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,225 INFO L290 TraceCheckUtils]: 36: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,225 INFO L290 TraceCheckUtils]: 37: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,225 INFO L290 TraceCheckUtils]: 38: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,226 INFO L290 TraceCheckUtils]: 39: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,226 INFO L290 TraceCheckUtils]: 40: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,226 INFO L290 TraceCheckUtils]: 41: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:55,227 INFO L290 TraceCheckUtils]: 42: Hoare triple {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:55,227 INFO L290 TraceCheckUtils]: 43: Hoare triple {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3483#false} is VALID [2022-02-20 23:41:55,227 INFO L290 TraceCheckUtils]: 44: Hoare triple {3483#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3483#false} is VALID [2022-02-20 23:41:55,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {3483#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {3483#false} is VALID [2022-02-20 23:41:55,227 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 11 proven. 85 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:55,227 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:55,228 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [837212429] [2022-02-20 23:41:55,228 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [837212429] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:55,228 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1014440679] [2022-02-20 23:41:55,228 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:41:55,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:55,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:55,229 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:41:55,230 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:41:55,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:55,302 INFO L263 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 54 conjunts are in the unsatisfiable core [2022-02-20 23:41:55,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:55,321 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:55,546 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:55,911 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:41:55,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {3482#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3482#true} is VALID [2022-02-20 23:41:55,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {3482#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {3482#true} is VALID [2022-02-20 23:41:55,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {3482#true} assume !(main_~length1~0#1 < 1); {3482#true} is VALID [2022-02-20 23:41:55,917 INFO L290 TraceCheckUtils]: 3: Hoare triple {3482#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:55,917 INFO L290 TraceCheckUtils]: 4: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:55,917 INFO L290 TraceCheckUtils]: 5: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:55,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:55,918 INFO L290 TraceCheckUtils]: 7: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:55,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:55,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:55,919 INFO L290 TraceCheckUtils]: 10: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} havoc main_#t~nondet7#1; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:55,919 INFO L290 TraceCheckUtils]: 11: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,921 INFO L290 TraceCheckUtils]: 14: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,921 INFO L290 TraceCheckUtils]: 15: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,921 INFO L290 TraceCheckUtils]: 16: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,922 INFO L290 TraceCheckUtils]: 17: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,922 INFO L290 TraceCheckUtils]: 18: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:55,923 INFO L290 TraceCheckUtils]: 19: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3564#(= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1)} is VALID [2022-02-20 23:41:55,923 INFO L290 TraceCheckUtils]: 20: Hoare triple {3564#(= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} is VALID [2022-02-20 23:41:55,924 INFO L290 TraceCheckUtils]: 21: Hoare triple {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} is VALID [2022-02-20 23:41:55,924 INFO L290 TraceCheckUtils]: 22: Hoare triple {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} havoc main_#t~nondet7#1; {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} is VALID [2022-02-20 23:41:55,924 INFO L290 TraceCheckUtils]: 23: Hoare triple {3568#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3578#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:41:55,925 INFO L290 TraceCheckUtils]: 24: Hoare triple {3578#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3582#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6))} is VALID [2022-02-20 23:41:55,926 INFO L290 TraceCheckUtils]: 25: Hoare triple {3582#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {3586#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:55,927 INFO L290 TraceCheckUtils]: 26: Hoare triple {3586#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:55,928 INFO L290 TraceCheckUtils]: 27: Hoare triple {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:55,929 INFO L290 TraceCheckUtils]: 28: Hoare triple {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:55,929 INFO L290 TraceCheckUtils]: 29: Hoare triple {3590#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,930 INFO L290 TraceCheckUtils]: 30: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,930 INFO L290 TraceCheckUtils]: 31: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:55,930 INFO L290 TraceCheckUtils]: 32: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,931 INFO L290 TraceCheckUtils]: 33: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,932 INFO L290 TraceCheckUtils]: 34: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:55,933 INFO L290 TraceCheckUtils]: 35: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,933 INFO L290 TraceCheckUtils]: 36: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,934 INFO L290 TraceCheckUtils]: 37: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:55,934 INFO L290 TraceCheckUtils]: 38: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,935 INFO L290 TraceCheckUtils]: 39: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,935 INFO L290 TraceCheckUtils]: 40: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:55,935 INFO L290 TraceCheckUtils]: 41: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:55,936 INFO L290 TraceCheckUtils]: 42: Hoare triple {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:55,936 INFO L290 TraceCheckUtils]: 43: Hoare triple {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3483#false} is VALID [2022-02-20 23:41:55,936 INFO L290 TraceCheckUtils]: 44: Hoare triple {3483#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3483#false} is VALID [2022-02-20 23:41:55,936 INFO L290 TraceCheckUtils]: 45: Hoare triple {3483#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {3483#false} is VALID [2022-02-20 23:41:55,937 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 11 proven. 85 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:55,937 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:56,052 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:41:56,056 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:41:56,291 INFO L290 TraceCheckUtils]: 45: Hoare triple {3483#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {3483#false} is VALID [2022-02-20 23:41:56,292 INFO L290 TraceCheckUtils]: 44: Hoare triple {3483#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3483#false} is VALID [2022-02-20 23:41:56,292 INFO L290 TraceCheckUtils]: 43: Hoare triple {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3483#false} is VALID [2022-02-20 23:41:56,292 INFO L290 TraceCheckUtils]: 42: Hoare triple {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3499#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:41:56,295 INFO L290 TraceCheckUtils]: 41: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3498#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:41:56,295 INFO L290 TraceCheckUtils]: 40: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:56,295 INFO L290 TraceCheckUtils]: 39: Hoare triple {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:56,296 INFO L290 TraceCheckUtils]: 38: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3497#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:56,296 INFO L290 TraceCheckUtils]: 37: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:56,296 INFO L290 TraceCheckUtils]: 36: Hoare triple {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:56,297 INFO L290 TraceCheckUtils]: 35: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3496#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:41:56,297 INFO L290 TraceCheckUtils]: 34: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:56,297 INFO L290 TraceCheckUtils]: 33: Hoare triple {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:56,298 INFO L290 TraceCheckUtils]: 32: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3495#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:41:56,298 INFO L290 TraceCheckUtils]: 31: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:56,298 INFO L290 TraceCheckUtils]: 30: Hoare triple {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:56,299 INFO L290 TraceCheckUtils]: 29: Hoare triple {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {3494#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:41:56,299 INFO L290 TraceCheckUtils]: 28: Hoare triple {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:41:56,299 INFO L290 TraceCheckUtils]: 27: Hoare triple {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:41:56,300 INFO L290 TraceCheckUtils]: 26: Hoare triple {3706#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) 0)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {3696#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:41:56,301 INFO L290 TraceCheckUtils]: 25: Hoare triple {3582#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {3706#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) 0)} is VALID [2022-02-20 23:41:56,302 INFO L290 TraceCheckUtils]: 24: Hoare triple {3713#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3582#(and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6))} is VALID [2022-02-20 23:41:56,302 INFO L290 TraceCheckUtils]: 23: Hoare triple {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3713#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:56,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} havoc main_#t~nondet7#1; {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:56,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:56,304 INFO L290 TraceCheckUtils]: 20: Hoare triple {3564#(= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3717#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 6)))} is VALID [2022-02-20 23:41:56,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3564#(= (+ (- 3) |ULTIMATE.start_main_~i~0#1|) 1)} is VALID [2022-02-20 23:41:56,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,305 INFO L290 TraceCheckUtils]: 17: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,312 INFO L290 TraceCheckUtils]: 16: Hoare triple {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3551#(= 1 (+ (- 2) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,313 INFO L290 TraceCheckUtils]: 14: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,313 INFO L290 TraceCheckUtils]: 13: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,314 INFO L290 TraceCheckUtils]: 12: Hoare triple {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,314 INFO L290 TraceCheckUtils]: 11: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3538#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:56,314 INFO L290 TraceCheckUtils]: 10: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} havoc main_#t~nondet7#1; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:56,315 INFO L290 TraceCheckUtils]: 9: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:56,315 INFO L290 TraceCheckUtils]: 8: Hoare triple {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:56,315 INFO L290 TraceCheckUtils]: 7: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3525#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:41:56,316 INFO L290 TraceCheckUtils]: 6: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:56,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:56,316 INFO L290 TraceCheckUtils]: 4: Hoare triple {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:56,317 INFO L290 TraceCheckUtils]: 3: Hoare triple {3482#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {3512#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:41:56,317 INFO L290 TraceCheckUtils]: 2: Hoare triple {3482#true} assume !(main_~length1~0#1 < 1); {3482#true} is VALID [2022-02-20 23:41:56,317 INFO L290 TraceCheckUtils]: 1: Hoare triple {3482#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {3482#true} is VALID [2022-02-20 23:41:56,317 INFO L290 TraceCheckUtils]: 0: Hoare triple {3482#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3482#true} is VALID [2022-02-20 23:41:56,317 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 11 proven. 85 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:56,317 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1014440679] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:56,317 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:56,318 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18, 18] total 32 [2022-02-20 23:41:56,318 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [40837403] [2022-02-20 23:41:56,318 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:56,318 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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 46 [2022-02-20 23:41:56,318 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:56,319 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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:41:56,373 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:41:56,373 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-02-20 23:41:56,373 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:56,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-02-20 23:41:56,374 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=901, Unknown=0, NotChecked=0, Total=992 [2022-02-20 23:41:56,374 INFO L87 Difference]: Start difference. First operand 47 states and 48 transitions. Second operand has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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:41:57,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:57,560 INFO L93 Difference]: Finished difference Result 73 states and 74 transitions. [2022-02-20 23:41:57,560 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-02-20 23:41:57,560 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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 46 [2022-02-20 23:41:57,560 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:57,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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:41:57,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 59 transitions. [2022-02-20 23:41:57,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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:41:57,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 59 transitions. [2022-02-20 23:41:57,561 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 59 transitions. [2022-02-20 23:41:57,608 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:57,609 INFO L225 Difference]: With dead ends: 73 [2022-02-20 23:41:57,609 INFO L226 Difference]: Without dead ends: 54 [2022-02-20 23:41:57,609 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 74 SyntacticMatches, 4 SemanticMatches, 44 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 279 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=219, Invalid=1851, Unknown=0, NotChecked=0, Total=2070 [2022-02-20 23:41:57,610 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 97 mSDsluCounter, 250 mSDsCounter, 0 mSdLazyCounter, 551 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 97 SdHoareTripleChecker+Valid, 265 SdHoareTripleChecker+Invalid, 652 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 551 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 68 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:57,610 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [97 Valid, 265 Invalid, 652 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 551 Invalid, 0 Unknown, 68 Unchecked, 0.4s Time] [2022-02-20 23:41:57,610 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-02-20 23:41:57,611 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 51. [2022-02-20 23:41:57,611 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:57,612 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 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:41:57,612 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 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:41:57,612 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 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:41:57,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:57,613 INFO L93 Difference]: Finished difference Result 54 states and 55 transitions. [2022-02-20 23:41:57,613 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2022-02-20 23:41:57,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:57,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:57,613 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 54 states. [2022-02-20 23:41:57,613 INFO L87 Difference]: Start difference. First operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 states have internal predecessors, (52), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 54 states. [2022-02-20 23:41:57,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:57,614 INFO L93 Difference]: Finished difference Result 54 states and 55 transitions. [2022-02-20 23:41:57,614 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2022-02-20 23:41:57,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:57,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:57,615 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:57,615 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:57,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 50 states have (on average 1.04) internal successors, (52), 50 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:41:57,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 52 transitions. [2022-02-20 23:41:57,615 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 52 transitions. Word has length 46 [2022-02-20 23:41:57,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:57,616 INFO L470 AbstractCegarLoop]: Abstraction has 51 states and 52 transitions. [2022-02-20 23:41:57,616 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 2.59375) internal successors, (83), 32 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:41:57,616 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 52 transitions. [2022-02-20 23:41:57,616 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-02-20 23:41:57,616 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:57,616 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:57,635 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:57,831 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:41:57,831 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:41:57,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:57,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1602484457, now seen corresponding path program 8 times [2022-02-20 23:41:57,832 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:57,832 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [906598313] [2022-02-20 23:41:57,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:57,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:57,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:58,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {4046#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4046#true} is VALID [2022-02-20 23:41:58,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {4046#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4046#true} is VALID [2022-02-20 23:41:58,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {4046#true} assume !(main_~length1~0#1 < 1); {4046#true} is VALID [2022-02-20 23:41:58,080 INFO L290 TraceCheckUtils]: 3: Hoare triple {4046#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,080 INFO L290 TraceCheckUtils]: 4: Hoare triple {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,081 INFO L290 TraceCheckUtils]: 6: Hoare triple {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {4048#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,083 INFO L290 TraceCheckUtils]: 10: Hoare triple {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {4049#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,085 INFO L290 TraceCheckUtils]: 14: Hoare triple {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,085 INFO L290 TraceCheckUtils]: 15: Hoare triple {4050#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,086 INFO L290 TraceCheckUtils]: 16: Hoare triple {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,086 INFO L290 TraceCheckUtils]: 17: Hoare triple {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,087 INFO L290 TraceCheckUtils]: 18: Hoare triple {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,087 INFO L290 TraceCheckUtils]: 19: Hoare triple {4051#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,088 INFO L290 TraceCheckUtils]: 21: Hoare triple {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,088 INFO L290 TraceCheckUtils]: 22: Hoare triple {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:58,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {4052#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4053#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,089 INFO L290 TraceCheckUtils]: 24: Hoare triple {4053#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,090 INFO L290 TraceCheckUtils]: 25: Hoare triple {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,090 INFO L290 TraceCheckUtils]: 26: Hoare triple {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,090 INFO L290 TraceCheckUtils]: 27: Hoare triple {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,091 INFO L290 TraceCheckUtils]: 28: Hoare triple {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:41:58,091 INFO L290 TraceCheckUtils]: 29: Hoare triple {4054#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4055#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:41:58,092 INFO L290 TraceCheckUtils]: 30: Hoare triple {4055#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,092 INFO L290 TraceCheckUtils]: 31: Hoare triple {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,092 INFO L290 TraceCheckUtils]: 32: Hoare triple {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {4056#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,094 INFO L290 TraceCheckUtils]: 35: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,094 INFO L290 TraceCheckUtils]: 36: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,094 INFO L290 TraceCheckUtils]: 37: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,095 INFO L290 TraceCheckUtils]: 38: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,095 INFO L290 TraceCheckUtils]: 39: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,096 INFO L290 TraceCheckUtils]: 40: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,096 INFO L290 TraceCheckUtils]: 41: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,097 INFO L290 TraceCheckUtils]: 42: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,097 INFO L290 TraceCheckUtils]: 43: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,097 INFO L290 TraceCheckUtils]: 44: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,098 INFO L290 TraceCheckUtils]: 45: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,098 INFO L290 TraceCheckUtils]: 46: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,099 INFO L290 TraceCheckUtils]: 47: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,100 INFO L290 TraceCheckUtils]: 48: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4062#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,100 INFO L290 TraceCheckUtils]: 49: Hoare triple {4062#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4047#false} is VALID [2022-02-20 23:41:58,101 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 28 proven. 89 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:58,101 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:58,101 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [906598313] [2022-02-20 23:41:58,101 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [906598313] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:58,101 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1032029212] [2022-02-20 23:41:58,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:58,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:58,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:58,102 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:41:58,102 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:41:58,173 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:58,173 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:58,174 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 45 conjunts are in the unsatisfiable core [2022-02-20 23:41:58,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:58,203 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:58,647 INFO L290 TraceCheckUtils]: 0: Hoare triple {4046#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4046#true} is VALID [2022-02-20 23:41:58,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {4046#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4046#true} is VALID [2022-02-20 23:41:58,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {4046#true} assume !(main_~length1~0#1 < 1); {4046#true} is VALID [2022-02-20 23:41:58,648 INFO L290 TraceCheckUtils]: 3: Hoare triple {4046#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,648 INFO L290 TraceCheckUtils]: 4: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,648 INFO L290 TraceCheckUtils]: 5: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,649 INFO L290 TraceCheckUtils]: 6: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,649 INFO L290 TraceCheckUtils]: 7: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,649 INFO L290 TraceCheckUtils]: 8: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,650 INFO L290 TraceCheckUtils]: 9: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,650 INFO L290 TraceCheckUtils]: 10: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,651 INFO L290 TraceCheckUtils]: 13: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,652 INFO L290 TraceCheckUtils]: 16: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,652 INFO L290 TraceCheckUtils]: 17: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,652 INFO L290 TraceCheckUtils]: 18: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,652 INFO L290 TraceCheckUtils]: 19: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,653 INFO L290 TraceCheckUtils]: 20: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,653 INFO L290 TraceCheckUtils]: 21: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,653 INFO L290 TraceCheckUtils]: 22: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,654 INFO L290 TraceCheckUtils]: 23: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4140#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:58,654 INFO L290 TraceCheckUtils]: 24: Hoare triple {4140#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:58,654 INFO L290 TraceCheckUtils]: 25: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:58,655 INFO L290 TraceCheckUtils]: 26: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:58,655 INFO L290 TraceCheckUtils]: 27: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:58,655 INFO L290 TraceCheckUtils]: 28: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:58,656 INFO L290 TraceCheckUtils]: 29: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4160#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:41:58,656 INFO L290 TraceCheckUtils]: 30: Hoare triple {4160#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4164#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} is VALID [2022-02-20 23:41:58,657 INFO L290 TraceCheckUtils]: 31: Hoare triple {4164#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4168#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,657 INFO L290 TraceCheckUtils]: 32: Hoare triple {4168#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4168#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,658 INFO L290 TraceCheckUtils]: 33: Hoare triple {4168#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,659 INFO L290 TraceCheckUtils]: 34: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,659 INFO L290 TraceCheckUtils]: 35: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,659 INFO L290 TraceCheckUtils]: 36: Hoare triple {4057#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,660 INFO L290 TraceCheckUtils]: 37: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,660 INFO L290 TraceCheckUtils]: 38: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,661 INFO L290 TraceCheckUtils]: 39: Hoare triple {4058#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,661 INFO L290 TraceCheckUtils]: 40: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,661 INFO L290 TraceCheckUtils]: 41: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,662 INFO L290 TraceCheckUtils]: 42: Hoare triple {4059#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,662 INFO L290 TraceCheckUtils]: 43: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,663 INFO L290 TraceCheckUtils]: 44: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:41:58,663 INFO L290 TraceCheckUtils]: 45: Hoare triple {4060#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,664 INFO L290 TraceCheckUtils]: 46: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,664 INFO L290 TraceCheckUtils]: 47: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,664 INFO L290 TraceCheckUtils]: 48: Hoare triple {4061#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4062#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:58,665 INFO L290 TraceCheckUtils]: 49: Hoare triple {4062#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4047#false} is VALID [2022-02-20 23:41:58,665 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 45 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:58,665 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:59,051 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:41:59,188 INFO L290 TraceCheckUtils]: 49: Hoare triple {4223#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4047#false} is VALID [2022-02-20 23:41:59,189 INFO L290 TraceCheckUtils]: 48: Hoare triple {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4223#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,189 INFO L290 TraceCheckUtils]: 47: Hoare triple {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,190 INFO L290 TraceCheckUtils]: 46: Hoare triple {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,190 INFO L290 TraceCheckUtils]: 45: Hoare triple {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4227#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,191 INFO L290 TraceCheckUtils]: 44: Hoare triple {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:41:59,191 INFO L290 TraceCheckUtils]: 43: Hoare triple {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:41:59,192 INFO L290 TraceCheckUtils]: 42: Hoare triple {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4237#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:41:59,195 INFO L290 TraceCheckUtils]: 41: Hoare triple {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,196 INFO L290 TraceCheckUtils]: 40: Hoare triple {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,196 INFO L290 TraceCheckUtils]: 39: Hoare triple {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4247#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,197 INFO L290 TraceCheckUtils]: 38: Hoare triple {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:41:59,197 INFO L290 TraceCheckUtils]: 37: Hoare triple {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:41:59,198 INFO L290 TraceCheckUtils]: 36: Hoare triple {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4257#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:41:59,198 INFO L290 TraceCheckUtils]: 35: Hoare triple {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:41:59,199 INFO L290 TraceCheckUtils]: 34: Hoare triple {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:41:59,199 INFO L290 TraceCheckUtils]: 33: Hoare triple {4277#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4267#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:41:59,200 INFO L290 TraceCheckUtils]: 32: Hoare triple {4277#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4277#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} is VALID [2022-02-20 23:41:59,200 INFO L290 TraceCheckUtils]: 31: Hoare triple {4284#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4277#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} is VALID [2022-02-20 23:41:59,201 INFO L290 TraceCheckUtils]: 30: Hoare triple {4288#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4284#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:41:59,201 INFO L290 TraceCheckUtils]: 29: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4288#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:41:59,201 INFO L290 TraceCheckUtils]: 28: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:59,202 INFO L290 TraceCheckUtils]: 27: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:59,202 INFO L290 TraceCheckUtils]: 26: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:59,202 INFO L290 TraceCheckUtils]: 25: Hoare triple {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:59,203 INFO L290 TraceCheckUtils]: 24: Hoare triple {4140#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4144#(< 6 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:41:59,203 INFO L290 TraceCheckUtils]: 23: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4140#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,203 INFO L290 TraceCheckUtils]: 22: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,204 INFO L290 TraceCheckUtils]: 21: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,204 INFO L290 TraceCheckUtils]: 20: Hoare triple {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,204 INFO L290 TraceCheckUtils]: 19: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4127#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,204 INFO L290 TraceCheckUtils]: 18: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,205 INFO L290 TraceCheckUtils]: 17: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,205 INFO L290 TraceCheckUtils]: 16: Hoare triple {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,205 INFO L290 TraceCheckUtils]: 15: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4114#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,206 INFO L290 TraceCheckUtils]: 14: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,206 INFO L290 TraceCheckUtils]: 13: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,206 INFO L290 TraceCheckUtils]: 12: Hoare triple {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,207 INFO L290 TraceCheckUtils]: 11: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4101#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,207 INFO L290 TraceCheckUtils]: 10: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,207 INFO L290 TraceCheckUtils]: 9: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,208 INFO L290 TraceCheckUtils]: 8: Hoare triple {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4088#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,208 INFO L290 TraceCheckUtils]: 6: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,208 INFO L290 TraceCheckUtils]: 5: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,223 INFO L290 TraceCheckUtils]: 4: Hoare triple {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,224 INFO L290 TraceCheckUtils]: 3: Hoare triple {4046#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4075#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:59,224 INFO L290 TraceCheckUtils]: 2: Hoare triple {4046#true} assume !(main_~length1~0#1 < 1); {4046#true} is VALID [2022-02-20 23:41:59,224 INFO L290 TraceCheckUtils]: 1: Hoare triple {4046#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4046#true} is VALID [2022-02-20 23:41:59,224 INFO L290 TraceCheckUtils]: 0: Hoare triple {4046#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4046#true} is VALID [2022-02-20 23:41:59,224 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 45 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:59,224 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1032029212] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:59,225 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:59,225 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 17, 17] total 35 [2022-02-20 23:41:59,225 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [910741773] [2022-02-20 23:41:59,225 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:59,226 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 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 50 [2022-02-20 23:41:59,226 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:59,226 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:59,297 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:59,297 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2022-02-20 23:41:59,297 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:59,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2022-02-20 23:41:59,298 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=165, Invalid=1095, Unknown=0, NotChecked=0, Total=1260 [2022-02-20 23:41:59,298 INFO L87 Difference]: Start difference. First operand 51 states and 52 transitions. Second operand has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:00,344 INFO L93 Difference]: Finished difference Result 56 states and 57 transitions. [2022-02-20 23:42:00,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:42:00,344 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 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 50 [2022-02-20 23:42:00,344 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:00,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 58 transitions. [2022-02-20 23:42:00,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 58 transitions. [2022-02-20 23:42:00,345 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 58 transitions. [2022-02-20 23:42:00,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:00,387 INFO L225 Difference]: With dead ends: 56 [2022-02-20 23:42:00,387 INFO L226 Difference]: Without dead ends: 56 [2022-02-20 23:42:00,388 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 78 SyntacticMatches, 2 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 462 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=381, Invalid=1599, Unknown=0, NotChecked=0, Total=1980 [2022-02-20 23:42:00,388 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 142 mSDsluCounter, 197 mSDsCounter, 0 mSdLazyCounter, 522 mSolverCounterSat, 64 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 142 SdHoareTripleChecker+Valid, 214 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 64 IncrementalHoareTripleChecker+Valid, 522 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:00,388 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [142 Valid, 214 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [64 Valid, 522 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:42:00,389 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-02-20 23:42:00,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 54. [2022-02-20 23:42:00,390 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:00,390 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,390 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,390 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:00,391 INFO L93 Difference]: Finished difference Result 56 states and 57 transitions. [2022-02-20 23:42:00,391 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 57 transitions. [2022-02-20 23:42:00,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:00,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:00,391 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 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 56 states. [2022-02-20 23:42:00,392 INFO L87 Difference]: Start difference. First operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 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 56 states. [2022-02-20 23:42:00,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:00,392 INFO L93 Difference]: Finished difference Result 56 states and 57 transitions. [2022-02-20 23:42:00,392 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 57 transitions. [2022-02-20 23:42:00,392 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:00,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:00,393 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:00,393 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:00,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 53 states have (on average 1.0377358490566038) internal successors, (55), 53 states have internal predecessors, (55), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 55 transitions. [2022-02-20 23:42:00,393 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 55 transitions. Word has length 50 [2022-02-20 23:42:00,394 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:00,394 INFO L470 AbstractCegarLoop]: Abstraction has 54 states and 55 transitions. [2022-02-20 23:42:00,394 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:00,394 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2022-02-20 23:42:00,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-02-20 23:42:00,394 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:00,394 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:00,415 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:42:00,613 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:42:00,614 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:00,614 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:00,614 INFO L85 PathProgramCache]: Analyzing trace with hash 1052944635, now seen corresponding path program 9 times [2022-02-20 23:42:00,614 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:00,614 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2043920888] [2022-02-20 23:42:00,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:00,614 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:00,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:00,897 INFO L290 TraceCheckUtils]: 0: Hoare triple {4618#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4618#true} is VALID [2022-02-20 23:42:00,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {4618#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4618#true} is VALID [2022-02-20 23:42:00,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {4618#true} assume !(main_~length1~0#1 < 1); {4618#true} is VALID [2022-02-20 23:42:00,897 INFO L290 TraceCheckUtils]: 3: Hoare triple {4618#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,898 INFO L290 TraceCheckUtils]: 4: Hoare triple {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,899 INFO L290 TraceCheckUtils]: 6: Hoare triple {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,899 INFO L290 TraceCheckUtils]: 7: Hoare triple {4620#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:00,899 INFO L290 TraceCheckUtils]: 8: Hoare triple {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:00,900 INFO L290 TraceCheckUtils]: 9: Hoare triple {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:00,900 INFO L290 TraceCheckUtils]: 10: Hoare triple {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:00,901 INFO L290 TraceCheckUtils]: 11: Hoare triple {4621#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,901 INFO L290 TraceCheckUtils]: 12: Hoare triple {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,902 INFO L290 TraceCheckUtils]: 15: Hoare triple {4622#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,903 INFO L290 TraceCheckUtils]: 16: Hoare triple {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {4623#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,905 INFO L290 TraceCheckUtils]: 21: Hoare triple {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,905 INFO L290 TraceCheckUtils]: 22: Hoare triple {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:00,906 INFO L290 TraceCheckUtils]: 23: Hoare triple {4624#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4625#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:00,906 INFO L290 TraceCheckUtils]: 24: Hoare triple {4625#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:00,906 INFO L290 TraceCheckUtils]: 25: Hoare triple {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:00,907 INFO L290 TraceCheckUtils]: 26: Hoare triple {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} havoc main_#t~nondet7#1; {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:00,907 INFO L290 TraceCheckUtils]: 27: Hoare triple {4626#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4627#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:00,908 INFO L290 TraceCheckUtils]: 28: Hoare triple {4627#(and (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4628#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,908 INFO L290 TraceCheckUtils]: 29: Hoare triple {4628#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4629#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,909 INFO L290 TraceCheckUtils]: 30: Hoare triple {4629#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,909 INFO L290 TraceCheckUtils]: 31: Hoare triple {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,909 INFO L290 TraceCheckUtils]: 32: Hoare triple {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:00,910 INFO L290 TraceCheckUtils]: 33: Hoare triple {4630#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 6) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:00,910 INFO L290 TraceCheckUtils]: 34: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:00,910 INFO L290 TraceCheckUtils]: 35: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:00,911 INFO L290 TraceCheckUtils]: 36: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:00,911 INFO L290 TraceCheckUtils]: 37: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:00,911 INFO L290 TraceCheckUtils]: 38: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:00,912 INFO L290 TraceCheckUtils]: 39: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:00,912 INFO L290 TraceCheckUtils]: 40: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:00,912 INFO L290 TraceCheckUtils]: 41: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:00,913 INFO L290 TraceCheckUtils]: 42: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:00,913 INFO L290 TraceCheckUtils]: 43: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:00,914 INFO L290 TraceCheckUtils]: 44: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:00,914 INFO L290 TraceCheckUtils]: 45: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:00,914 INFO L290 TraceCheckUtils]: 46: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:00,915 INFO L290 TraceCheckUtils]: 47: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:00,915 INFO L290 TraceCheckUtils]: 48: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:00,916 INFO L290 TraceCheckUtils]: 49: Hoare triple {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:00,916 INFO L290 TraceCheckUtils]: 50: Hoare triple {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4619#false} is VALID [2022-02-20 23:42:00,916 INFO L290 TraceCheckUtils]: 51: Hoare triple {4619#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4619#false} is VALID [2022-02-20 23:42:00,916 INFO L290 TraceCheckUtils]: 52: Hoare triple {4619#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4619#false} is VALID [2022-02-20 23:42:00,916 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 13 proven. 123 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:00,916 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:00,917 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2043920888] [2022-02-20 23:42:00,917 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2043920888] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:00,917 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [149985059] [2022-02-20 23:42:00,917 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:42:00,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:00,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:00,918 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:42:00,918 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:42:01,006 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-02-20 23:42:01,006 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:42:01,011 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 60 conjunts are in the unsatisfiable core [2022-02-20 23:42:01,028 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:01,029 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:01,291 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:42:01,650 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:42:01,655 INFO L290 TraceCheckUtils]: 0: Hoare triple {4618#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4618#true} is VALID [2022-02-20 23:42:01,655 INFO L290 TraceCheckUtils]: 1: Hoare triple {4618#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4618#true} is VALID [2022-02-20 23:42:01,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {4618#true} assume !(main_~length1~0#1 < 1); {4618#true} is VALID [2022-02-20 23:42:01,658 INFO L290 TraceCheckUtils]: 3: Hoare triple {4618#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:01,658 INFO L290 TraceCheckUtils]: 4: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:01,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:01,659 INFO L290 TraceCheckUtils]: 6: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:01,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:01,660 INFO L290 TraceCheckUtils]: 8: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:01,660 INFO L290 TraceCheckUtils]: 9: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:01,660 INFO L290 TraceCheckUtils]: 10: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} havoc main_#t~nondet7#1; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:01,660 INFO L290 TraceCheckUtils]: 11: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:01,661 INFO L290 TraceCheckUtils]: 12: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:01,661 INFO L290 TraceCheckUtils]: 13: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:01,661 INFO L290 TraceCheckUtils]: 14: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:01,662 INFO L290 TraceCheckUtils]: 15: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:01,662 INFO L290 TraceCheckUtils]: 16: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:01,662 INFO L290 TraceCheckUtils]: 17: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:01,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:01,663 INFO L290 TraceCheckUtils]: 19: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:01,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:01,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:01,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} havoc main_#t~nondet7#1; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:01,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4715#(= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:01,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {4715#(= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:42:01,665 INFO L290 TraceCheckUtils]: 25: Hoare triple {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:42:01,665 INFO L290 TraceCheckUtils]: 26: Hoare triple {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet7#1; {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:42:01,665 INFO L290 TraceCheckUtils]: 27: Hoare triple {4719#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4729#(and (<= |ULTIMATE.start_main_~i~0#1| 6) (< 6 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:01,666 INFO L290 TraceCheckUtils]: 28: Hoare triple {4729#(and (<= |ULTIMATE.start_main_~i~0#1| 6) (< 6 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4733#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:01,667 INFO L290 TraceCheckUtils]: 29: Hoare triple {4733#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4737#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:01,668 INFO L290 TraceCheckUtils]: 30: Hoare triple {4737#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:01,668 INFO L290 TraceCheckUtils]: 31: Hoare triple {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:01,668 INFO L290 TraceCheckUtils]: 32: Hoare triple {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:01,669 INFO L290 TraceCheckUtils]: 33: Hoare triple {4741#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:01,669 INFO L290 TraceCheckUtils]: 34: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:01,669 INFO L290 TraceCheckUtils]: 35: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:01,670 INFO L290 TraceCheckUtils]: 36: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:01,670 INFO L290 TraceCheckUtils]: 37: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:01,671 INFO L290 TraceCheckUtils]: 38: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:01,671 INFO L290 TraceCheckUtils]: 39: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:01,671 INFO L290 TraceCheckUtils]: 40: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:01,672 INFO L290 TraceCheckUtils]: 41: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:01,672 INFO L290 TraceCheckUtils]: 42: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:01,673 INFO L290 TraceCheckUtils]: 43: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:01,673 INFO L290 TraceCheckUtils]: 44: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:01,673 INFO L290 TraceCheckUtils]: 45: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:01,674 INFO L290 TraceCheckUtils]: 46: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:01,674 INFO L290 TraceCheckUtils]: 47: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:01,674 INFO L290 TraceCheckUtils]: 48: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:01,675 INFO L290 TraceCheckUtils]: 49: Hoare triple {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:01,675 INFO L290 TraceCheckUtils]: 50: Hoare triple {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4619#false} is VALID [2022-02-20 23:42:01,675 INFO L290 TraceCheckUtils]: 51: Hoare triple {4619#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4619#false} is VALID [2022-02-20 23:42:01,675 INFO L290 TraceCheckUtils]: 52: Hoare triple {4619#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4619#false} is VALID [2022-02-20 23:42:01,675 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 13 proven. 123 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:01,676 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:42:01,789 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:42:01,792 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:42:02,070 INFO L290 TraceCheckUtils]: 52: Hoare triple {4619#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {4619#false} is VALID [2022-02-20 23:42:02,070 INFO L290 TraceCheckUtils]: 51: Hoare triple {4619#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4619#false} is VALID [2022-02-20 23:42:02,070 INFO L290 TraceCheckUtils]: 50: Hoare triple {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4619#false} is VALID [2022-02-20 23:42:02,071 INFO L290 TraceCheckUtils]: 49: Hoare triple {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4637#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:02,071 INFO L290 TraceCheckUtils]: 48: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4636#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:02,072 INFO L290 TraceCheckUtils]: 47: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:02,072 INFO L290 TraceCheckUtils]: 46: Hoare triple {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:02,072 INFO L290 TraceCheckUtils]: 45: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4635#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:02,073 INFO L290 TraceCheckUtils]: 44: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:02,073 INFO L290 TraceCheckUtils]: 43: Hoare triple {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:02,074 INFO L290 TraceCheckUtils]: 42: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4634#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:02,074 INFO L290 TraceCheckUtils]: 41: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:02,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:02,075 INFO L290 TraceCheckUtils]: 39: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4633#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:02,075 INFO L290 TraceCheckUtils]: 38: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:02,075 INFO L290 TraceCheckUtils]: 37: Hoare triple {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:02,076 INFO L290 TraceCheckUtils]: 36: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4632#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:02,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:02,076 INFO L290 TraceCheckUtils]: 34: Hoare triple {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:02,077 INFO L290 TraceCheckUtils]: 33: Hoare triple {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {4631#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:02,077 INFO L290 TraceCheckUtils]: 32: Hoare triple {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:02,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:02,078 INFO L290 TraceCheckUtils]: 30: Hoare triple {4875#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) 0)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {4865#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:02,078 INFO L290 TraceCheckUtils]: 29: Hoare triple {4733#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {4875#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:02,079 INFO L290 TraceCheckUtils]: 28: Hoare triple {4882#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4733#(and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:02,079 INFO L290 TraceCheckUtils]: 27: Hoare triple {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4882#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:02,079 INFO L290 TraceCheckUtils]: 26: Hoare triple {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} havoc main_#t~nondet7#1; {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:02,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:02,080 INFO L290 TraceCheckUtils]: 24: Hoare triple {4715#(= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4886#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (<= |ULTIMATE.start_main_~length1~0#1| 7) (< 6 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:02,080 INFO L290 TraceCheckUtils]: 23: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4715#(= 4 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:02,081 INFO L290 TraceCheckUtils]: 22: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} havoc main_#t~nondet7#1; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:02,081 INFO L290 TraceCheckUtils]: 21: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:02,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:02,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4702#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:02,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:02,082 INFO L290 TraceCheckUtils]: 17: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:02,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:02,084 INFO L290 TraceCheckUtils]: 15: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4689#(= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:02,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:02,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:02,088 INFO L290 TraceCheckUtils]: 12: Hoare triple {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:02,088 INFO L290 TraceCheckUtils]: 11: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4676#(= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:02,088 INFO L290 TraceCheckUtils]: 10: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} havoc main_#t~nondet7#1; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:02,089 INFO L290 TraceCheckUtils]: 9: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:02,090 INFO L290 TraceCheckUtils]: 8: Hoare triple {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:02,090 INFO L290 TraceCheckUtils]: 7: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4663#(= |ULTIMATE.start_main_~i~0#1| 1)} is VALID [2022-02-20 23:42:02,090 INFO L290 TraceCheckUtils]: 6: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:02,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:02,091 INFO L290 TraceCheckUtils]: 4: Hoare triple {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:02,091 INFO L290 TraceCheckUtils]: 3: Hoare triple {4618#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {4650#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:02,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {4618#true} assume !(main_~length1~0#1 < 1); {4618#true} is VALID [2022-02-20 23:42:02,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {4618#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {4618#true} is VALID [2022-02-20 23:42:02,091 INFO L290 TraceCheckUtils]: 0: Hoare triple {4618#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4618#true} is VALID [2022-02-20 23:42:02,091 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 13 proven. 123 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:02,092 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [149985059] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:42:02,092 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:42:02,092 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20, 20] total 35 [2022-02-20 23:42:02,093 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [144550404] [2022-02-20 23:42:02,093 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:42:02,093 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 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 53 [2022-02-20 23:42:02,093 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:42:02,094 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:02,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:02,160 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-02-20 23:42:02,160 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:42:02,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-02-20 23:42:02,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=1092, Unknown=0, NotChecked=0, Total=1190 [2022-02-20 23:42:02,161 INFO L87 Difference]: Start difference. First operand 54 states and 55 transitions. Second operand has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:03,755 INFO L93 Difference]: Finished difference Result 83 states and 84 transitions. [2022-02-20 23:42:03,755 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-02-20 23:42:03,755 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 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 53 [2022-02-20 23:42:03,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:03,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 66 transitions. [2022-02-20 23:42:03,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 66 transitions. [2022-02-20 23:42:03,756 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 26 states and 66 transitions. [2022-02-20 23:42:03,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:03,809 INFO L225 Difference]: With dead ends: 83 [2022-02-20 23:42:03,809 INFO L226 Difference]: Without dead ends: 61 [2022-02-20 23:42:03,810 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 85 SyntacticMatches, 6 SemanticMatches, 49 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 361 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=241, Invalid=2309, Unknown=0, NotChecked=0, Total=2550 [2022-02-20 23:42:03,810 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 130 mSDsluCounter, 328 mSDsCounter, 0 mSdLazyCounter, 750 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 130 SdHoareTripleChecker+Valid, 345 SdHoareTripleChecker+Invalid, 871 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 750 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 75 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:03,810 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [130 Valid, 345 Invalid, 871 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 750 Invalid, 0 Unknown, 75 Unchecked, 0.5s Time] [2022-02-20 23:42:03,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-02-20 23:42:03,811 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 58. [2022-02-20 23:42:03,811 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:03,812 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,812 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,812 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:03,812 INFO L93 Difference]: Finished difference Result 61 states and 62 transitions. [2022-02-20 23:42:03,812 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 62 transitions. [2022-02-20 23:42:03,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:03,813 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:03,813 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 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 61 states. [2022-02-20 23:42:03,814 INFO L87 Difference]: Start difference. First operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 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 61 states. [2022-02-20 23:42:03,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:03,815 INFO L93 Difference]: Finished difference Result 61 states and 62 transitions. [2022-02-20 23:42:03,815 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 62 transitions. [2022-02-20 23:42:03,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:03,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:03,815 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:03,815 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:03,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 57 states have (on average 1.0350877192982457) internal successors, (59), 57 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 59 transitions. [2022-02-20 23:42:03,816 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 59 transitions. Word has length 53 [2022-02-20 23:42:03,816 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:03,816 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 59 transitions. [2022-02-20 23:42:03,816 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 35 states, 35 states have (on average 2.6857142857142855) internal successors, (94), 35 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:03,816 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 59 transitions. [2022-02-20 23:42:03,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-02-20 23:42:03,816 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:03,816 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:03,853 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:42:04,023 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:42:04,023 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:04,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:04,024 INFO L85 PathProgramCache]: Analyzing trace with hash -409414312, now seen corresponding path program 10 times [2022-02-20 23:42:04,024 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:04,024 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [709920623] [2022-02-20 23:42:04,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:04,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:04,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:04,307 INFO L290 TraceCheckUtils]: 0: Hoare triple {5262#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5262#true} is VALID [2022-02-20 23:42:04,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {5262#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5262#true} is VALID [2022-02-20 23:42:04,307 INFO L290 TraceCheckUtils]: 2: Hoare triple {5262#true} assume !(main_~length1~0#1 < 1); {5262#true} is VALID [2022-02-20 23:42:04,308 INFO L290 TraceCheckUtils]: 3: Hoare triple {5262#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,308 INFO L290 TraceCheckUtils]: 4: Hoare triple {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,309 INFO L290 TraceCheckUtils]: 6: Hoare triple {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {5264#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,311 INFO L290 TraceCheckUtils]: 10: Hoare triple {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,311 INFO L290 TraceCheckUtils]: 11: Hoare triple {5265#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,312 INFO L290 TraceCheckUtils]: 13: Hoare triple {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,312 INFO L290 TraceCheckUtils]: 14: Hoare triple {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {5266#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,314 INFO L290 TraceCheckUtils]: 17: Hoare triple {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,314 INFO L290 TraceCheckUtils]: 18: Hoare triple {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,314 INFO L290 TraceCheckUtils]: 19: Hoare triple {5267#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,315 INFO L290 TraceCheckUtils]: 20: Hoare triple {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,315 INFO L290 TraceCheckUtils]: 21: Hoare triple {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,316 INFO L290 TraceCheckUtils]: 22: Hoare triple {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,316 INFO L290 TraceCheckUtils]: 23: Hoare triple {5268#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,316 INFO L290 TraceCheckUtils]: 24: Hoare triple {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,317 INFO L290 TraceCheckUtils]: 25: Hoare triple {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,317 INFO L290 TraceCheckUtils]: 26: Hoare triple {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:04,318 INFO L290 TraceCheckUtils]: 27: Hoare triple {5269#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5270#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,318 INFO L290 TraceCheckUtils]: 28: Hoare triple {5270#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,318 INFO L290 TraceCheckUtils]: 29: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,319 INFO L290 TraceCheckUtils]: 30: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,319 INFO L290 TraceCheckUtils]: 31: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,319 INFO L290 TraceCheckUtils]: 32: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,320 INFO L290 TraceCheckUtils]: 33: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:04,320 INFO L290 TraceCheckUtils]: 34: Hoare triple {5271#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,321 INFO L290 TraceCheckUtils]: 35: Hoare triple {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,321 INFO L290 TraceCheckUtils]: 36: Hoare triple {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,321 INFO L290 TraceCheckUtils]: 37: Hoare triple {5272#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,322 INFO L290 TraceCheckUtils]: 38: Hoare triple {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,322 INFO L290 TraceCheckUtils]: 39: Hoare triple {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,323 INFO L290 TraceCheckUtils]: 40: Hoare triple {5273#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,323 INFO L290 TraceCheckUtils]: 41: Hoare triple {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,324 INFO L290 TraceCheckUtils]: 42: Hoare triple {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,325 INFO L290 TraceCheckUtils]: 43: Hoare triple {5274#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,325 INFO L290 TraceCheckUtils]: 44: Hoare triple {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,326 INFO L290 TraceCheckUtils]: 45: Hoare triple {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,326 INFO L290 TraceCheckUtils]: 46: Hoare triple {5275#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,326 INFO L290 TraceCheckUtils]: 47: Hoare triple {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,327 INFO L290 TraceCheckUtils]: 48: Hoare triple {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,327 INFO L290 TraceCheckUtils]: 49: Hoare triple {5276#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,328 INFO L290 TraceCheckUtils]: 50: Hoare triple {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,328 INFO L290 TraceCheckUtils]: 51: Hoare triple {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:04,328 INFO L290 TraceCheckUtils]: 52: Hoare triple {5277#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,329 INFO L290 TraceCheckUtils]: 53: Hoare triple {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,329 INFO L290 TraceCheckUtils]: 54: Hoare triple {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,330 INFO L290 TraceCheckUtils]: 55: Hoare triple {5278#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5279#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:04,330 INFO L290 TraceCheckUtils]: 56: Hoare triple {5279#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5263#false} is VALID [2022-02-20 23:42:04,330 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 45 proven. 116 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:04,330 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:04,331 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [709920623] [2022-02-20 23:42:04,331 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [709920623] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:04,331 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [173107653] [2022-02-20 23:42:04,331 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:42:04,331 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:04,331 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:04,332 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:42:04,332 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:42:04,399 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:42:04,399 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:42:04,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 63 conjunts are in the unsatisfiable core [2022-02-20 23:42:04,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:04,415 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:04,429 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:42:04,869 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:42:05,430 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:42:05,432 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 19 [2022-02-20 23:42:05,568 INFO L290 TraceCheckUtils]: 0: Hoare triple {5262#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5262#true} is VALID [2022-02-20 23:42:05,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {5262#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5262#true} is VALID [2022-02-20 23:42:05,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {5262#true} assume !(main_~length1~0#1 < 1); {5262#true} is VALID [2022-02-20 23:42:05,568 INFO L290 TraceCheckUtils]: 3: Hoare triple {5262#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,569 INFO L290 TraceCheckUtils]: 4: Hoare triple {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {5292#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,570 INFO L290 TraceCheckUtils]: 8: Hoare triple {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,571 INFO L290 TraceCheckUtils]: 9: Hoare triple {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {5305#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,573 INFO L290 TraceCheckUtils]: 14: Hoare triple {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,573 INFO L290 TraceCheckUtils]: 15: Hoare triple {5318#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,574 INFO L290 TraceCheckUtils]: 16: Hoare triple {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,574 INFO L290 TraceCheckUtils]: 17: Hoare triple {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,574 INFO L290 TraceCheckUtils]: 18: Hoare triple {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,575 INFO L290 TraceCheckUtils]: 19: Hoare triple {5331#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,576 INFO L290 TraceCheckUtils]: 21: Hoare triple {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,576 INFO L290 TraceCheckUtils]: 22: Hoare triple {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,576 INFO L290 TraceCheckUtils]: 23: Hoare triple {5344#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,577 INFO L290 TraceCheckUtils]: 24: Hoare triple {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,577 INFO L290 TraceCheckUtils]: 25: Hoare triple {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,578 INFO L290 TraceCheckUtils]: 26: Hoare triple {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,579 INFO L290 TraceCheckUtils]: 27: Hoare triple {5357#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5370#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,579 INFO L290 TraceCheckUtils]: 28: Hoare triple {5370#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 6 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5370#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:05,580 INFO L290 TraceCheckUtils]: 29: Hoare triple {5370#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 6 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,580 INFO L290 TraceCheckUtils]: 30: Hoare triple {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,581 INFO L290 TraceCheckUtils]: 31: Hoare triple {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,581 INFO L290 TraceCheckUtils]: 32: Hoare triple {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,582 INFO L290 TraceCheckUtils]: 33: Hoare triple {5377#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {5390#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:05,582 INFO L290 TraceCheckUtils]: 34: Hoare triple {5390#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {5394#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,583 INFO L290 TraceCheckUtils]: 35: Hoare triple {5394#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5398#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,583 INFO L290 TraceCheckUtils]: 36: Hoare triple {5398#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5398#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,584 INFO L290 TraceCheckUtils]: 37: Hoare triple {5398#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,584 INFO L290 TraceCheckUtils]: 38: Hoare triple {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,584 INFO L290 TraceCheckUtils]: 39: Hoare triple {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,585 INFO L290 TraceCheckUtils]: 40: Hoare triple {5405#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:05,585 INFO L290 TraceCheckUtils]: 41: Hoare triple {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:05,586 INFO L290 TraceCheckUtils]: 42: Hoare triple {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:05,586 INFO L290 TraceCheckUtils]: 43: Hoare triple {5415#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:05,587 INFO L290 TraceCheckUtils]: 44: Hoare triple {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:05,587 INFO L290 TraceCheckUtils]: 45: Hoare triple {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:05,588 INFO L290 TraceCheckUtils]: 46: Hoare triple {5425#(and (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,588 INFO L290 TraceCheckUtils]: 47: Hoare triple {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,589 INFO L290 TraceCheckUtils]: 48: Hoare triple {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,589 INFO L290 TraceCheckUtils]: 49: Hoare triple {5435#(and (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,590 INFO L290 TraceCheckUtils]: 50: Hoare triple {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,590 INFO L290 TraceCheckUtils]: 51: Hoare triple {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,590 INFO L290 TraceCheckUtils]: 52: Hoare triple {5445#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5455#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} is VALID [2022-02-20 23:42:05,591 INFO L290 TraceCheckUtils]: 53: Hoare triple {5455#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5459#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:05,592 INFO L290 TraceCheckUtils]: 54: Hoare triple {5459#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5463#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (not (= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))))} is VALID [2022-02-20 23:42:05,592 INFO L290 TraceCheckUtils]: 55: Hoare triple {5463#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (not (= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5467#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 7))} is VALID [2022-02-20 23:42:05,593 INFO L290 TraceCheckUtils]: 56: Hoare triple {5467#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (not (= |ULTIMATE.start_cstrlen_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| 7))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5263#false} is VALID [2022-02-20 23:42:05,593 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 72 proven. 89 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:05,593 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:42:06,451 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:42:06,468 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:42:07,869 INFO L290 TraceCheckUtils]: 56: Hoare triple {5471#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5263#false} is VALID [2022-02-20 23:42:07,869 INFO L290 TraceCheckUtils]: 55: Hoare triple {5475#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5471#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:07,870 INFO L290 TraceCheckUtils]: 54: Hoare triple {5479#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5475#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:07,870 INFO L290 TraceCheckUtils]: 53: Hoare triple {5483#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5479#(or (= |ULTIMATE.start_cstrlen_#t~mem3#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:42:07,871 INFO L290 TraceCheckUtils]: 52: Hoare triple {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5483#(or (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0))} is VALID [2022-02-20 23:42:07,871 INFO L290 TraceCheckUtils]: 51: Hoare triple {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:42:07,872 INFO L290 TraceCheckUtils]: 50: Hoare triple {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:42:07,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5487#(or (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:42:07,873 INFO L290 TraceCheckUtils]: 48: Hoare triple {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:42:07,873 INFO L290 TraceCheckUtils]: 47: Hoare triple {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:42:07,874 INFO L290 TraceCheckUtils]: 46: Hoare triple {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5497#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0) (and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))))} is VALID [2022-02-20 23:42:07,874 INFO L290 TraceCheckUtils]: 45: Hoare triple {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} is VALID [2022-02-20 23:42:07,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} is VALID [2022-02-20 23:42:07,875 INFO L290 TraceCheckUtils]: 43: Hoare triple {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5507#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0) (and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))))} is VALID [2022-02-20 23:42:07,876 INFO L290 TraceCheckUtils]: 42: Hoare triple {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} is VALID [2022-02-20 23:42:07,876 INFO L290 TraceCheckUtils]: 41: Hoare triple {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} is VALID [2022-02-20 23:42:07,877 INFO L290 TraceCheckUtils]: 40: Hoare triple {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5517#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0) (and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))))} is VALID [2022-02-20 23:42:07,877 INFO L290 TraceCheckUtils]: 39: Hoare triple {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} is VALID [2022-02-20 23:42:07,878 INFO L290 TraceCheckUtils]: 38: Hoare triple {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} is VALID [2022-02-20 23:42:07,878 INFO L290 TraceCheckUtils]: 37: Hoare triple {5537#(or (and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5527#(or (and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0))} is VALID [2022-02-20 23:42:07,879 INFO L290 TraceCheckUtils]: 36: Hoare triple {5537#(or (and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5537#(or (and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0))} is VALID [2022-02-20 23:42:07,879 INFO L290 TraceCheckUtils]: 35: Hoare triple {5544#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5537#(or (and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0))} is VALID [2022-02-20 23:42:07,880 INFO L290 TraceCheckUtils]: 34: Hoare triple {5548#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| 6)) 0) (<= (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104|) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104|))))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {5544#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0) (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:07,881 INFO L290 TraceCheckUtils]: 33: Hoare triple {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {5548#(forall ((|v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| 6)) 0) (<= (+ |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< |ULTIMATE.start_main_~nondetString1~0#1.offset| |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104|) (not (<= 0 |v_ULTIMATE.start_cstrlen_~s~0#1.offset_104|))))} is VALID [2022-02-20 23:42:07,881 INFO L290 TraceCheckUtils]: 32: Hoare triple {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} is VALID [2022-02-20 23:42:07,882 INFO L290 TraceCheckUtils]: 31: Hoare triple {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} is VALID [2022-02-20 23:42:07,882 INFO L290 TraceCheckUtils]: 30: Hoare triple {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} havoc main_#t~nondet7#1; {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} is VALID [2022-02-20 23:42:07,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {5565#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5552#(and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7)))} is VALID [2022-02-20 23:42:07,884 INFO L290 TraceCheckUtils]: 28: Hoare triple {5565#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5565#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,884 INFO L290 TraceCheckUtils]: 27: Hoare triple {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5565#(or (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,885 INFO L290 TraceCheckUtils]: 26: Hoare triple {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} havoc main_#t~nondet7#1; {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,887 INFO L290 TraceCheckUtils]: 23: Hoare triple {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5572#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} havoc main_#t~nondet7#1; {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,888 INFO L290 TraceCheckUtils]: 21: Hoare triple {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,889 INFO L290 TraceCheckUtils]: 20: Hoare triple {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5585#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,890 INFO L290 TraceCheckUtils]: 18: Hoare triple {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} havoc main_#t~nondet7#1; {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:42:07,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:42:07,892 INFO L290 TraceCheckUtils]: 16: Hoare triple {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:42:07,892 INFO L290 TraceCheckUtils]: 15: Hoare triple {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5598#(or (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:42:07,893 INFO L290 TraceCheckUtils]: 14: Hoare triple {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} havoc main_#t~nondet7#1; {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5611#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,896 INFO L290 TraceCheckUtils]: 10: Hoare triple {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} havoc main_#t~nondet7#1; {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,898 INFO L290 TraceCheckUtils]: 7: Hoare triple {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5624#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,898 INFO L290 TraceCheckUtils]: 6: Hoare triple {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} havoc main_#t~nondet7#1; {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,899 INFO L290 TraceCheckUtils]: 4: Hoare triple {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,900 INFO L290 TraceCheckUtils]: 3: Hoare triple {5262#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {5637#(or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7 |ULTIMATE.start_main_~i~0#1|)) (and (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 7 |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 7))))} is VALID [2022-02-20 23:42:07,900 INFO L290 TraceCheckUtils]: 2: Hoare triple {5262#true} assume !(main_~length1~0#1 < 1); {5262#true} is VALID [2022-02-20 23:42:07,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {5262#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5262#true} is VALID [2022-02-20 23:42:07,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {5262#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5262#true} is VALID [2022-02-20 23:42:07,901 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 91 proven. 70 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:07,901 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [173107653] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:42:07,901 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:42:07,901 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 21, 21] total 57 [2022-02-20 23:42:07,901 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [633178148] [2022-02-20 23:42:07,901 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:42:07,902 INFO L78 Accepts]: Start accepts. Automaton has has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 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 57 [2022-02-20 23:42:07,902 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:42:07,902 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:08,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:08,032 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 58 states [2022-02-20 23:42:08,032 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:42:08,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 58 interpolants. [2022-02-20 23:42:08,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=358, Invalid=2948, Unknown=0, NotChecked=0, Total=3306 [2022-02-20 23:42:08,033 INFO L87 Difference]: Start difference. First operand 58 states and 59 transitions. Second operand has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:10,362 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:42:10,362 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-02-20 23:42:10,362 INFO L78 Accepts]: Start accepts. Automaton has has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 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 57 [2022-02-20 23:42:10,362 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:10,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 69 transitions. [2022-02-20 23:42:10,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 69 transitions. [2022-02-20 23:42:10,373 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 69 transitions. [2022-02-20 23:42:10,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:10,446 INFO L225 Difference]: With dead ends: 66 [2022-02-20 23:42:10,446 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 23:42:10,447 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 74 SyntacticMatches, 0 SemanticMatches, 73 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 819 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=950, Invalid=4600, Unknown=0, NotChecked=0, Total=5550 [2022-02-20 23:42:10,447 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 181 mSDsluCounter, 308 mSDsCounter, 0 mSdLazyCounter, 851 mSolverCounterSat, 79 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 181 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 952 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 79 IncrementalHoareTripleChecker+Valid, 851 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 22 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:10,448 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [181 Valid, 326 Invalid, 952 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [79 Valid, 851 Invalid, 0 Unknown, 22 Unchecked, 0.7s Time] [2022-02-20 23:42:10,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 23:42:10,449 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-02-20 23:42:10,449 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:10,449 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,449 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,449 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:10,450 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:42:10,450 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2022-02-20 23:42:10,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:10,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:10,451 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 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 66 states. [2022-02-20 23:42:10,451 INFO L87 Difference]: Start difference. First operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 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 66 states. [2022-02-20 23:42:10,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:10,452 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:42:10,452 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2022-02-20 23:42:10,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:10,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:10,452 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:10,452 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:10,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 63 states have (on average 1.0317460317460319) internal successors, (65), 63 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 65 transitions. [2022-02-20 23:42:10,453 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 65 transitions. Word has length 57 [2022-02-20 23:42:10,453 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:10,453 INFO L470 AbstractCegarLoop]: Abstraction has 64 states and 65 transitions. [2022-02-20 23:42:10,453 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 58 states, 57 states have (on average 2.8947368421052633) internal successors, (165), 58 states have internal predecessors, (165), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:10,453 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 65 transitions. [2022-02-20 23:42:10,454 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-02-20 23:42:10,454 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:10,454 INFO L514 BasicCegarLoop]: trace histogram [9, 9, 9, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:10,481 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-02-20 23:42:10,670 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:42:10,671 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:10,671 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:10,671 INFO L85 PathProgramCache]: Analyzing trace with hash 1923200216, now seen corresponding path program 11 times [2022-02-20 23:42:10,671 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:10,671 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1749870179] [2022-02-20 23:42:10,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:10,671 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:10,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:10,943 INFO L290 TraceCheckUtils]: 0: Hoare triple {5955#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5955#true} is VALID [2022-02-20 23:42:10,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {5955#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5955#true} is VALID [2022-02-20 23:42:10,943 INFO L290 TraceCheckUtils]: 2: Hoare triple {5955#true} assume !(main_~length1~0#1 < 1); {5955#true} is VALID [2022-02-20 23:42:10,943 INFO L290 TraceCheckUtils]: 3: Hoare triple {5955#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,944 INFO L290 TraceCheckUtils]: 4: Hoare triple {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,945 INFO L290 TraceCheckUtils]: 6: Hoare triple {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {5957#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:10,945 INFO L290 TraceCheckUtils]: 8: Hoare triple {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:10,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:10,946 INFO L290 TraceCheckUtils]: 10: Hoare triple {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:10,947 INFO L290 TraceCheckUtils]: 11: Hoare triple {5958#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,947 INFO L290 TraceCheckUtils]: 12: Hoare triple {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,948 INFO L290 TraceCheckUtils]: 14: Hoare triple {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,948 INFO L290 TraceCheckUtils]: 15: Hoare triple {5959#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,949 INFO L290 TraceCheckUtils]: 16: Hoare triple {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {5960#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,951 INFO L290 TraceCheckUtils]: 20: Hoare triple {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,952 INFO L290 TraceCheckUtils]: 23: Hoare triple {5961#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:10,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:10,953 INFO L290 TraceCheckUtils]: 25: Hoare triple {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:10,953 INFO L290 TraceCheckUtils]: 26: Hoare triple {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} havoc main_#t~nondet7#1; {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:10,954 INFO L290 TraceCheckUtils]: 27: Hoare triple {5962#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:10,954 INFO L290 TraceCheckUtils]: 28: Hoare triple {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:10,954 INFO L290 TraceCheckUtils]: 29: Hoare triple {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:10,955 INFO L290 TraceCheckUtils]: 30: Hoare triple {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} havoc main_#t~nondet7#1; {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:10,955 INFO L290 TraceCheckUtils]: 31: Hoare triple {5963#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5964#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:10,956 INFO L290 TraceCheckUtils]: 32: Hoare triple {5964#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5965#(and (<= |ULTIMATE.start_main_~length1~0#1| 8) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:10,956 INFO L290 TraceCheckUtils]: 33: Hoare triple {5965#(and (<= |ULTIMATE.start_main_~length1~0#1| 8) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {5966#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} is VALID [2022-02-20 23:42:10,957 INFO L290 TraceCheckUtils]: 34: Hoare triple {5966#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:10,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:10,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:10,958 INFO L290 TraceCheckUtils]: 37: Hoare triple {5967#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,958 INFO L290 TraceCheckUtils]: 38: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,958 INFO L290 TraceCheckUtils]: 39: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,959 INFO L290 TraceCheckUtils]: 40: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:10,959 INFO L290 TraceCheckUtils]: 41: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:10,960 INFO L290 TraceCheckUtils]: 42: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:10,960 INFO L290 TraceCheckUtils]: 43: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,960 INFO L290 TraceCheckUtils]: 44: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,961 INFO L290 TraceCheckUtils]: 45: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:10,961 INFO L290 TraceCheckUtils]: 46: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:10,961 INFO L290 TraceCheckUtils]: 47: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:10,961 INFO L290 TraceCheckUtils]: 48: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:10,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:10,962 INFO L290 TraceCheckUtils]: 50: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:10,963 INFO L290 TraceCheckUtils]: 51: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:10,963 INFO L290 TraceCheckUtils]: 52: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:10,963 INFO L290 TraceCheckUtils]: 53: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:10,964 INFO L290 TraceCheckUtils]: 54: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:10,964 INFO L290 TraceCheckUtils]: 55: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:10,964 INFO L290 TraceCheckUtils]: 56: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:10,965 INFO L290 TraceCheckUtils]: 57: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:10,965 INFO L290 TraceCheckUtils]: 58: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5975#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} is VALID [2022-02-20 23:42:10,966 INFO L290 TraceCheckUtils]: 59: Hoare triple {5975#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5956#false} is VALID [2022-02-20 23:42:10,966 INFO L290 TraceCheckUtils]: 60: Hoare triple {5956#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5956#false} is VALID [2022-02-20 23:42:10,966 INFO L290 TraceCheckUtils]: 61: Hoare triple {5956#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5956#false} is VALID [2022-02-20 23:42:10,966 INFO L290 TraceCheckUtils]: 62: Hoare triple {5956#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5956#false} is VALID [2022-02-20 23:42:10,966 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 95 proven. 113 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:10,966 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:10,966 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1749870179] [2022-02-20 23:42:10,966 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1749870179] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:10,966 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [671140262] [2022-02-20 23:42:10,966 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:42:10,966 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:10,967 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:10,967 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:42:10,968 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-02-20 23:42:11,082 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2022-02-20 23:42:11,083 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:42:11,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 49 conjunts are in the unsatisfiable core [2022-02-20 23:42:11,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:11,103 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:11,148 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2022-02-20 23:42:12,123 INFO L290 TraceCheckUtils]: 0: Hoare triple {5955#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5955#true} is VALID [2022-02-20 23:42:12,123 INFO L290 TraceCheckUtils]: 1: Hoare triple {5955#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5955#true} is VALID [2022-02-20 23:42:12,123 INFO L290 TraceCheckUtils]: 2: Hoare triple {5955#true} assume !(main_~length1~0#1 < 1); {5955#true} is VALID [2022-02-20 23:42:12,124 INFO L290 TraceCheckUtils]: 3: Hoare triple {5955#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,124 INFO L290 TraceCheckUtils]: 4: Hoare triple {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,125 INFO L290 TraceCheckUtils]: 6: Hoare triple {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} havoc main_#t~nondet7#1; {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,125 INFO L290 TraceCheckUtils]: 7: Hoare triple {5988#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:12,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:12,129 INFO L290 TraceCheckUtils]: 9: Hoare triple {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:12,129 INFO L290 TraceCheckUtils]: 10: Hoare triple {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:12,129 INFO L290 TraceCheckUtils]: 11: Hoare triple {6001#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,130 INFO L290 TraceCheckUtils]: 12: Hoare triple {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,131 INFO L290 TraceCheckUtils]: 14: Hoare triple {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} havoc main_#t~nondet7#1; {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,131 INFO L290 TraceCheckUtils]: 15: Hoare triple {6014#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,132 INFO L290 TraceCheckUtils]: 17: Hoare triple {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} havoc main_#t~nondet7#1; {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} is VALID [2022-02-20 23:42:12,133 INFO L290 TraceCheckUtils]: 19: Hoare triple {6027#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} is VALID [2022-02-20 23:42:12,133 INFO L290 TraceCheckUtils]: 20: Hoare triple {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} is VALID [2022-02-20 23:42:12,133 INFO L290 TraceCheckUtils]: 21: Hoare triple {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} is VALID [2022-02-20 23:42:12,134 INFO L290 TraceCheckUtils]: 22: Hoare triple {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} havoc main_#t~nondet7#1; {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} is VALID [2022-02-20 23:42:12,134 INFO L290 TraceCheckUtils]: 23: Hoare triple {6040#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 4))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:12,135 INFO L290 TraceCheckUtils]: 24: Hoare triple {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:12,135 INFO L290 TraceCheckUtils]: 25: Hoare triple {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:12,135 INFO L290 TraceCheckUtils]: 26: Hoare triple {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} havoc main_#t~nondet7#1; {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:12,136 INFO L290 TraceCheckUtils]: 27: Hoare triple {6053#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:12,136 INFO L290 TraceCheckUtils]: 28: Hoare triple {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:12,137 INFO L290 TraceCheckUtils]: 29: Hoare triple {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:12,137 INFO L290 TraceCheckUtils]: 30: Hoare triple {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} havoc main_#t~nondet7#1; {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} is VALID [2022-02-20 23:42:12,137 INFO L290 TraceCheckUtils]: 31: Hoare triple {6066#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 6))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6079#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:12,138 INFO L290 TraceCheckUtils]: 32: Hoare triple {6079#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6083#(and (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,138 INFO L290 TraceCheckUtils]: 33: Hoare triple {6083#(and (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {6083#(and (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,139 INFO L290 TraceCheckUtils]: 34: Hoare triple {6083#(and (<= 0 |ULTIMATE.start_main_~nondetString1~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 8))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,139 INFO L290 TraceCheckUtils]: 35: Hoare triple {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,139 INFO L290 TraceCheckUtils]: 36: Hoare triple {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,140 INFO L290 TraceCheckUtils]: 37: Hoare triple {6090#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,140 INFO L290 TraceCheckUtils]: 38: Hoare triple {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,141 INFO L290 TraceCheckUtils]: 39: Hoare triple {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,141 INFO L290 TraceCheckUtils]: 40: Hoare triple {6100#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,141 INFO L290 TraceCheckUtils]: 41: Hoare triple {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,142 INFO L290 TraceCheckUtils]: 42: Hoare triple {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,142 INFO L290 TraceCheckUtils]: 43: Hoare triple {6110#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,143 INFO L290 TraceCheckUtils]: 44: Hoare triple {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,143 INFO L290 TraceCheckUtils]: 45: Hoare triple {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,143 INFO L290 TraceCheckUtils]: 46: Hoare triple {6120#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,144 INFO L290 TraceCheckUtils]: 47: Hoare triple {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,144 INFO L290 TraceCheckUtils]: 48: Hoare triple {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,144 INFO L290 TraceCheckUtils]: 49: Hoare triple {6130#(and (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,145 INFO L290 TraceCheckUtils]: 50: Hoare triple {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,145 INFO L290 TraceCheckUtils]: 51: Hoare triple {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,146 INFO L290 TraceCheckUtils]: 52: Hoare triple {6140#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,146 INFO L290 TraceCheckUtils]: 53: Hoare triple {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,146 INFO L290 TraceCheckUtils]: 54: Hoare triple {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,147 INFO L290 TraceCheckUtils]: 55: Hoare triple {6150#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,147 INFO L290 TraceCheckUtils]: 56: Hoare triple {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,147 INFO L290 TraceCheckUtils]: 57: Hoare triple {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,148 INFO L290 TraceCheckUtils]: 58: Hoare triple {6160#(and (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6170#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} is VALID [2022-02-20 23:42:12,148 INFO L290 TraceCheckUtils]: 59: Hoare triple {6170#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5956#false} is VALID [2022-02-20 23:42:12,148 INFO L290 TraceCheckUtils]: 60: Hoare triple {5956#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5956#false} is VALID [2022-02-20 23:42:12,148 INFO L290 TraceCheckUtils]: 61: Hoare triple {5956#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5956#false} is VALID [2022-02-20 23:42:12,149 INFO L290 TraceCheckUtils]: 62: Hoare triple {5956#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5956#false} is VALID [2022-02-20 23:42:12,149 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 117 proven. 91 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:12,149 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:42:12,960 INFO L290 TraceCheckUtils]: 62: Hoare triple {5956#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {5956#false} is VALID [2022-02-20 23:42:12,960 INFO L290 TraceCheckUtils]: 61: Hoare triple {5956#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5956#false} is VALID [2022-02-20 23:42:12,960 INFO L290 TraceCheckUtils]: 60: Hoare triple {5956#false} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5956#false} is VALID [2022-02-20 23:42:12,961 INFO L290 TraceCheckUtils]: 59: Hoare triple {5975#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5956#false} is VALID [2022-02-20 23:42:12,961 INFO L290 TraceCheckUtils]: 58: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5975#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|)} is VALID [2022-02-20 23:42:12,961 INFO L290 TraceCheckUtils]: 57: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:12,962 INFO L290 TraceCheckUtils]: 56: Hoare triple {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:12,962 INFO L290 TraceCheckUtils]: 55: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5974#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1))} is VALID [2022-02-20 23:42:12,963 INFO L290 TraceCheckUtils]: 54: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:12,963 INFO L290 TraceCheckUtils]: 53: Hoare triple {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:12,963 INFO L290 TraceCheckUtils]: 52: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5973#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2))} is VALID [2022-02-20 23:42:12,964 INFO L290 TraceCheckUtils]: 51: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:12,964 INFO L290 TraceCheckUtils]: 50: Hoare triple {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:12,964 INFO L290 TraceCheckUtils]: 49: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5972#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3))} is VALID [2022-02-20 23:42:12,965 INFO L290 TraceCheckUtils]: 48: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:12,965 INFO L290 TraceCheckUtils]: 47: Hoare triple {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:12,965 INFO L290 TraceCheckUtils]: 46: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5971#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4))} is VALID [2022-02-20 23:42:12,966 INFO L290 TraceCheckUtils]: 45: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,966 INFO L290 TraceCheckUtils]: 44: Hoare triple {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,966 INFO L290 TraceCheckUtils]: 43: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5970#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,967 INFO L290 TraceCheckUtils]: 42: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:12,967 INFO L290 TraceCheckUtils]: 41: Hoare triple {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:12,967 INFO L290 TraceCheckUtils]: 40: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5969#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6))} is VALID [2022-02-20 23:42:12,968 INFO L290 TraceCheckUtils]: 39: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,968 INFO L290 TraceCheckUtils]: 38: Hoare triple {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,968 INFO L290 TraceCheckUtils]: 37: Hoare triple {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {5968#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:12,969 INFO L290 TraceCheckUtils]: 36: Hoare triple {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} is VALID [2022-02-20 23:42:12,969 INFO L290 TraceCheckUtils]: 35: Hoare triple {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} is VALID [2022-02-20 23:42:12,969 INFO L290 TraceCheckUtils]: 34: Hoare triple {6268#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {6258#(<= (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8))} is VALID [2022-02-20 23:42:12,970 INFO L290 TraceCheckUtils]: 33: Hoare triple {6268#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {6268#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8))} is VALID [2022-02-20 23:42:12,970 INFO L290 TraceCheckUtils]: 32: Hoare triple {6275#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6268#(<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8))} is VALID [2022-02-20 23:42:12,971 INFO L290 TraceCheckUtils]: 31: Hoare triple {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6275#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,971 INFO L290 TraceCheckUtils]: 30: Hoare triple {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} havoc main_#t~nondet7#1; {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,971 INFO L290 TraceCheckUtils]: 29: Hoare triple {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,975 INFO L290 TraceCheckUtils]: 28: Hoare triple {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,976 INFO L290 TraceCheckUtils]: 27: Hoare triple {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6279#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,976 INFO L290 TraceCheckUtils]: 26: Hoare triple {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,977 INFO L290 TraceCheckUtils]: 25: Hoare triple {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,977 INFO L290 TraceCheckUtils]: 24: Hoare triple {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,978 INFO L290 TraceCheckUtils]: 23: Hoare triple {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6292#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} havoc main_#t~nondet7#1; {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,979 INFO L290 TraceCheckUtils]: 21: Hoare triple {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,979 INFO L290 TraceCheckUtils]: 20: Hoare triple {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,980 INFO L290 TraceCheckUtils]: 19: Hoare triple {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6305#(or (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,980 INFO L290 TraceCheckUtils]: 18: Hoare triple {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} havoc main_#t~nondet7#1; {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,981 INFO L290 TraceCheckUtils]: 17: Hoare triple {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,982 INFO L290 TraceCheckUtils]: 15: Hoare triple {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6318#(or (< (+ 5 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))} is VALID [2022-02-20 23:42:12,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,983 INFO L290 TraceCheckUtils]: 12: Hoare triple {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,984 INFO L290 TraceCheckUtils]: 11: Hoare triple {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6331#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 6 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,984 INFO L290 TraceCheckUtils]: 10: Hoare triple {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,984 INFO L290 TraceCheckUtils]: 9: Hoare triple {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6344#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ 7 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,986 INFO L290 TraceCheckUtils]: 6: Hoare triple {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,986 INFO L290 TraceCheckUtils]: 5: Hoare triple {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,987 INFO L290 TraceCheckUtils]: 4: Hoare triple {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,988 INFO L290 TraceCheckUtils]: 3: Hoare triple {5955#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {6357#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) (< (+ |ULTIMATE.start_main_~i~0#1| 8) |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:12,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {5955#true} assume !(main_~length1~0#1 < 1); {5955#true} is VALID [2022-02-20 23:42:12,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {5955#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {5955#true} is VALID [2022-02-20 23:42:12,988 INFO L290 TraceCheckUtils]: 0: Hoare triple {5955#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5955#true} is VALID [2022-02-20 23:42:12,988 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 117 proven. 91 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:12,988 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [671140262] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:42:12,989 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:42:12,989 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 49 [2022-02-20 23:42:12,989 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [870611773] [2022-02-20 23:42:12,989 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:42:12,989 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 63 [2022-02-20 23:42:12,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:42:12,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:13,095 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 49 states [2022-02-20 23:42:13,095 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:42:13,096 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 49 interpolants. [2022-02-20 23:42:13,096 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=444, Invalid=1908, Unknown=0, NotChecked=0, Total=2352 [2022-02-20 23:42:13,096 INFO L87 Difference]: Start difference. First operand 64 states and 65 transitions. Second operand has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:13,722 INFO L93 Difference]: Finished difference Result 98 states and 99 transitions. [2022-02-20 23:42:13,722 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-02-20 23:42:13,722 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 63 [2022-02-20 23:42:13,723 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:13,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 75 transitions. [2022-02-20 23:42:13,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 75 transitions. [2022-02-20 23:42:13,724 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 75 transitions. [2022-02-20 23:42:13,777 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:13,777 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:42:13,777 INFO L226 Difference]: Without dead ends: 71 [2022-02-20 23:42:13,778 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 155 GetRequests, 97 SyntacticMatches, 1 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 780 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=732, Invalid=2690, Unknown=0, NotChecked=0, Total=3422 [2022-02-20 23:42:13,779 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 100 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 271 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 290 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 271 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:13,779 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 125 Invalid, 290 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 271 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:42:13,779 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-02-20 23:42:13,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 68. [2022-02-20 23:42:13,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:13,780 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,780 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,780 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:13,781 INFO L93 Difference]: Finished difference Result 71 states and 72 transitions. [2022-02-20 23:42:13,781 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 72 transitions. [2022-02-20 23:42:13,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:13,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:13,782 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 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 71 states. [2022-02-20 23:42:13,782 INFO L87 Difference]: Start difference. First operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 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 71 states. [2022-02-20 23:42:13,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:13,783 INFO L93 Difference]: Finished difference Result 71 states and 72 transitions. [2022-02-20 23:42:13,783 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 72 transitions. [2022-02-20 23:42:13,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:13,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:13,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:13,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:13,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 67 states have (on average 1.0298507462686568) internal successors, (69), 67 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 69 transitions. [2022-02-20 23:42:13,784 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 69 transitions. Word has length 63 [2022-02-20 23:42:13,784 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:13,784 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 69 transitions. [2022-02-20 23:42:13,784 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 49 states, 49 states have (on average 3.163265306122449) internal successors, (155), 49 states have internal predecessors, (155), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:13,784 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 69 transitions. [2022-02-20 23:42:13,785 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-02-20 23:42:13,785 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:13,785 INFO L514 BasicCegarLoop]: trace histogram [9, 9, 9, 8, 8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:13,809 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-02-20 23:42:13,999 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-02-20 23:42:13,999 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:13,999 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:14,000 INFO L85 PathProgramCache]: Analyzing trace with hash -305803019, now seen corresponding path program 12 times [2022-02-20 23:42:14,000 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:14,000 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1812411745] [2022-02-20 23:42:14,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:14,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:14,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:14,358 INFO L290 TraceCheckUtils]: 0: Hoare triple {6706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6706#true} is VALID [2022-02-20 23:42:14,358 INFO L290 TraceCheckUtils]: 1: Hoare triple {6706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {6706#true} is VALID [2022-02-20 23:42:14,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {6706#true} assume !(main_~length1~0#1 < 1); {6706#true} is VALID [2022-02-20 23:42:14,358 INFO L290 TraceCheckUtils]: 3: Hoare triple {6706#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,359 INFO L290 TraceCheckUtils]: 4: Hoare triple {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,360 INFO L290 TraceCheckUtils]: 6: Hoare triple {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,360 INFO L290 TraceCheckUtils]: 7: Hoare triple {6708#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:14,360 INFO L290 TraceCheckUtils]: 8: Hoare triple {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:14,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:14,361 INFO L290 TraceCheckUtils]: 10: Hoare triple {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:14,362 INFO L290 TraceCheckUtils]: 11: Hoare triple {6709#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,362 INFO L290 TraceCheckUtils]: 12: Hoare triple {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,362 INFO L290 TraceCheckUtils]: 13: Hoare triple {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,363 INFO L290 TraceCheckUtils]: 14: Hoare triple {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,363 INFO L290 TraceCheckUtils]: 15: Hoare triple {6710#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,364 INFO L290 TraceCheckUtils]: 16: Hoare triple {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,364 INFO L290 TraceCheckUtils]: 17: Hoare triple {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,364 INFO L290 TraceCheckUtils]: 18: Hoare triple {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,365 INFO L290 TraceCheckUtils]: 19: Hoare triple {6711#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,365 INFO L290 TraceCheckUtils]: 20: Hoare triple {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,366 INFO L290 TraceCheckUtils]: 21: Hoare triple {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,366 INFO L290 TraceCheckUtils]: 22: Hoare triple {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,366 INFO L290 TraceCheckUtils]: 23: Hoare triple {6712#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:14,367 INFO L290 TraceCheckUtils]: 24: Hoare triple {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:14,367 INFO L290 TraceCheckUtils]: 25: Hoare triple {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:14,378 INFO L290 TraceCheckUtils]: 26: Hoare triple {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} havoc main_#t~nondet7#1; {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:14,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {6713#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,380 INFO L290 TraceCheckUtils]: 29: Hoare triple {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,380 INFO L290 TraceCheckUtils]: 30: Hoare triple {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:14,380 INFO L290 TraceCheckUtils]: 31: Hoare triple {6714#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6715#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:14,381 INFO L290 TraceCheckUtils]: 32: Hoare triple {6715#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:14,381 INFO L290 TraceCheckUtils]: 33: Hoare triple {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:14,382 INFO L290 TraceCheckUtils]: 34: Hoare triple {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} havoc main_#t~nondet7#1; {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:14,382 INFO L290 TraceCheckUtils]: 35: Hoare triple {6716#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 7))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6717#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:14,382 INFO L290 TraceCheckUtils]: 36: Hoare triple {6717#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6718#(and (<= |ULTIMATE.start_main_~length1~0#1| 9) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:14,383 INFO L290 TraceCheckUtils]: 37: Hoare triple {6718#(and (<= |ULTIMATE.start_main_~length1~0#1| 9) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 9 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {6719#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,383 INFO L290 TraceCheckUtils]: 38: Hoare triple {6719#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,384 INFO L290 TraceCheckUtils]: 39: Hoare triple {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,384 INFO L290 TraceCheckUtils]: 40: Hoare triple {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} is VALID [2022-02-20 23:42:14,385 INFO L290 TraceCheckUtils]: 41: Hoare triple {6720#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 8) 0) (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,385 INFO L290 TraceCheckUtils]: 42: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,385 INFO L290 TraceCheckUtils]: 43: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,385 INFO L290 TraceCheckUtils]: 44: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:14,386 INFO L290 TraceCheckUtils]: 45: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:14,386 INFO L290 TraceCheckUtils]: 46: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:14,387 INFO L290 TraceCheckUtils]: 47: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,387 INFO L290 TraceCheckUtils]: 48: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,387 INFO L290 TraceCheckUtils]: 49: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:14,388 INFO L290 TraceCheckUtils]: 50: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:14,388 INFO L290 TraceCheckUtils]: 51: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:14,388 INFO L290 TraceCheckUtils]: 52: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:14,388 INFO L290 TraceCheckUtils]: 53: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:14,389 INFO L290 TraceCheckUtils]: 54: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:14,389 INFO L290 TraceCheckUtils]: 55: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:14,390 INFO L290 TraceCheckUtils]: 56: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:14,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:14,390 INFO L290 TraceCheckUtils]: 58: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:14,391 INFO L290 TraceCheckUtils]: 59: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:14,391 INFO L290 TraceCheckUtils]: 60: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:14,391 INFO L290 TraceCheckUtils]: 61: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:14,392 INFO L290 TraceCheckUtils]: 62: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:14,392 INFO L290 TraceCheckUtils]: 63: Hoare triple {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:14,392 INFO L290 TraceCheckUtils]: 64: Hoare triple {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6707#false} is VALID [2022-02-20 23:42:14,392 INFO L290 TraceCheckUtils]: 65: Hoare triple {6707#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6707#false} is VALID [2022-02-20 23:42:14,392 INFO L290 TraceCheckUtils]: 66: Hoare triple {6707#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {6707#false} is VALID [2022-02-20 23:42:14,393 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 17 proven. 220 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:14,393 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:14,393 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1812411745] [2022-02-20 23:42:14,393 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1812411745] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:14,393 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2111624589] [2022-02-20 23:42:14,393 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:42:14,393 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:14,393 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:14,394 INFO L229 MonitoredProcess]: Starting monitored process 14 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:42:14,395 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-02-20 23:42:14,522 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 10 check-sat command(s) [2022-02-20 23:42:14,522 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:42:14,524 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 72 conjunts are in the unsatisfiable core [2022-02-20 23:42:14,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:14,539 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:14,883 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:42:15,250 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:42:15,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {6706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6706#true} is VALID [2022-02-20 23:42:15,260 INFO L290 TraceCheckUtils]: 1: Hoare triple {6706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {6706#true} is VALID [2022-02-20 23:42:15,260 INFO L290 TraceCheckUtils]: 2: Hoare triple {6706#true} assume !(main_~length1~0#1 < 1); {6706#true} is VALID [2022-02-20 23:42:15,260 INFO L290 TraceCheckUtils]: 3: Hoare triple {6706#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,260 INFO L290 TraceCheckUtils]: 4: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,261 INFO L290 TraceCheckUtils]: 6: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,262 INFO L290 TraceCheckUtils]: 10: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,262 INFO L290 TraceCheckUtils]: 11: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,263 INFO L290 TraceCheckUtils]: 12: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,263 INFO L290 TraceCheckUtils]: 13: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,263 INFO L290 TraceCheckUtils]: 14: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,263 INFO L290 TraceCheckUtils]: 15: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,264 INFO L290 TraceCheckUtils]: 18: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,264 INFO L290 TraceCheckUtils]: 19: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,265 INFO L290 TraceCheckUtils]: 20: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,265 INFO L290 TraceCheckUtils]: 21: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} havoc main_#t~nondet7#1; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,266 INFO L290 TraceCheckUtils]: 24: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,266 INFO L290 TraceCheckUtils]: 25: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,266 INFO L290 TraceCheckUtils]: 26: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,267 INFO L290 TraceCheckUtils]: 27: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,267 INFO L290 TraceCheckUtils]: 28: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,267 INFO L290 TraceCheckUtils]: 29: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,267 INFO L290 TraceCheckUtils]: 30: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,268 INFO L290 TraceCheckUtils]: 31: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6833#(= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,268 INFO L290 TraceCheckUtils]: 32: Hoare triple {6833#(= 7 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,268 INFO L290 TraceCheckUtils]: 33: Hoare triple {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,269 INFO L290 TraceCheckUtils]: 34: Hoare triple {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,269 INFO L290 TraceCheckUtils]: 35: Hoare triple {6837#(and (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (= 7 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6847#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 8))} is VALID [2022-02-20 23:42:15,269 INFO L290 TraceCheckUtils]: 36: Hoare triple {6847#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 8))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6851#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9))} is VALID [2022-02-20 23:42:15,271 INFO L290 TraceCheckUtils]: 37: Hoare triple {6851#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {6855#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,271 INFO L290 TraceCheckUtils]: 38: Hoare triple {6855#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,278 INFO L290 TraceCheckUtils]: 40: Hoare triple {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,279 INFO L290 TraceCheckUtils]: 41: Hoare triple {6859#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1| |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0) (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,279 INFO L290 TraceCheckUtils]: 42: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,280 INFO L290 TraceCheckUtils]: 44: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,280 INFO L290 TraceCheckUtils]: 45: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,280 INFO L290 TraceCheckUtils]: 46: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,281 INFO L290 TraceCheckUtils]: 47: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,281 INFO L290 TraceCheckUtils]: 48: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,282 INFO L290 TraceCheckUtils]: 50: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,282 INFO L290 TraceCheckUtils]: 51: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,282 INFO L290 TraceCheckUtils]: 52: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,283 INFO L290 TraceCheckUtils]: 53: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,283 INFO L290 TraceCheckUtils]: 54: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,283 INFO L290 TraceCheckUtils]: 55: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,284 INFO L290 TraceCheckUtils]: 56: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,284 INFO L290 TraceCheckUtils]: 57: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,284 INFO L290 TraceCheckUtils]: 58: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,285 INFO L290 TraceCheckUtils]: 59: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,285 INFO L290 TraceCheckUtils]: 60: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,285 INFO L290 TraceCheckUtils]: 61: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,286 INFO L290 TraceCheckUtils]: 62: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:15,286 INFO L290 TraceCheckUtils]: 63: Hoare triple {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:15,286 INFO L290 TraceCheckUtils]: 64: Hoare triple {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6707#false} is VALID [2022-02-20 23:42:15,286 INFO L290 TraceCheckUtils]: 65: Hoare triple {6707#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6707#false} is VALID [2022-02-20 23:42:15,287 INFO L290 TraceCheckUtils]: 66: Hoare triple {6707#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {6707#false} is VALID [2022-02-20 23:42:15,287 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 17 proven. 220 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:15,287 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:42:15,420 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:42:15,424 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:42:15,764 INFO L290 TraceCheckUtils]: 66: Hoare triple {6707#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {6707#false} is VALID [2022-02-20 23:42:15,765 INFO L290 TraceCheckUtils]: 65: Hoare triple {6707#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6707#false} is VALID [2022-02-20 23:42:15,765 INFO L290 TraceCheckUtils]: 64: Hoare triple {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6707#false} is VALID [2022-02-20 23:42:15,765 INFO L290 TraceCheckUtils]: 63: Hoare triple {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6729#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:15,766 INFO L290 TraceCheckUtils]: 62: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6728#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:15,766 INFO L290 TraceCheckUtils]: 61: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,766 INFO L290 TraceCheckUtils]: 60: Hoare triple {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,767 INFO L290 TraceCheckUtils]: 59: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6727#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:15,767 INFO L290 TraceCheckUtils]: 58: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,767 INFO L290 TraceCheckUtils]: 57: Hoare triple {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,768 INFO L290 TraceCheckUtils]: 56: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6726#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:15,768 INFO L290 TraceCheckUtils]: 55: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,768 INFO L290 TraceCheckUtils]: 54: Hoare triple {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,769 INFO L290 TraceCheckUtils]: 53: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6725#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:15,769 INFO L290 TraceCheckUtils]: 52: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,769 INFO L290 TraceCheckUtils]: 51: Hoare triple {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,770 INFO L290 TraceCheckUtils]: 50: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6724#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:15,770 INFO L290 TraceCheckUtils]: 49: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,770 INFO L290 TraceCheckUtils]: 48: Hoare triple {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,771 INFO L290 TraceCheckUtils]: 47: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6723#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,771 INFO L290 TraceCheckUtils]: 46: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,771 INFO L290 TraceCheckUtils]: 45: Hoare triple {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,772 INFO L290 TraceCheckUtils]: 44: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6722#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:15,772 INFO L290 TraceCheckUtils]: 43: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,772 INFO L290 TraceCheckUtils]: 42: Hoare triple {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,773 INFO L290 TraceCheckUtils]: 41: Hoare triple {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {6721#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:15,773 INFO L290 TraceCheckUtils]: 40: Hoare triple {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:15,773 INFO L290 TraceCheckUtils]: 39: Hoare triple {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:15,774 INFO L290 TraceCheckUtils]: 38: Hoare triple {7029#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) 0)} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {7019#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:15,774 INFO L290 TraceCheckUtils]: 37: Hoare triple {6851#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {7029#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:15,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {7036#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6851#(and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9))} is VALID [2022-02-20 23:42:15,775 INFO L290 TraceCheckUtils]: 35: Hoare triple {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7036#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} havoc main_#t~nondet7#1; {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,776 INFO L290 TraceCheckUtils]: 33: Hoare triple {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,776 INFO L290 TraceCheckUtils]: 32: Hoare triple {6833#(= 7 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7040#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (< 8 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 9)))} is VALID [2022-02-20 23:42:15,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6833#(= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,777 INFO L290 TraceCheckUtils]: 30: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,777 INFO L290 TraceCheckUtils]: 29: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,777 INFO L290 TraceCheckUtils]: 28: Hoare triple {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,777 INFO L290 TraceCheckUtils]: 27: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6820#(= 5 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,778 INFO L290 TraceCheckUtils]: 23: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6807#(= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,779 INFO L290 TraceCheckUtils]: 22: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} havoc main_#t~nondet7#1; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,779 INFO L290 TraceCheckUtils]: 21: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,779 INFO L290 TraceCheckUtils]: 20: Hoare triple {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6794#(= |ULTIMATE.start_main_~i~0#1| 4)} is VALID [2022-02-20 23:42:15,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,781 INFO L290 TraceCheckUtils]: 15: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6781#(= 2 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,781 INFO L290 TraceCheckUtils]: 14: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,781 INFO L290 TraceCheckUtils]: 13: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,781 INFO L290 TraceCheckUtils]: 12: Hoare triple {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6768#(= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:15,782 INFO L290 TraceCheckUtils]: 10: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,783 INFO L290 TraceCheckUtils]: 7: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {6755#(= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:15,783 INFO L290 TraceCheckUtils]: 6: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} havoc main_#t~nondet7#1; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,784 INFO L290 TraceCheckUtils]: 4: Hoare triple {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,784 INFO L290 TraceCheckUtils]: 3: Hoare triple {6706#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {6742#(= |ULTIMATE.start_main_~i~0#1| 0)} is VALID [2022-02-20 23:42:15,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {6706#true} assume !(main_~length1~0#1 < 1); {6706#true} is VALID [2022-02-20 23:42:15,784 INFO L290 TraceCheckUtils]: 1: Hoare triple {6706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {6706#true} is VALID [2022-02-20 23:42:15,784 INFO L290 TraceCheckUtils]: 0: Hoare triple {6706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6706#true} is VALID [2022-02-20 23:42:15,784 INFO L134 CoverageAnalysis]: Checked inductivity of 237 backedges. 17 proven. 220 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:15,784 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2111624589] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:42:15,784 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:42:15,785 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 24, 24] total 41 [2022-02-20 23:42:15,785 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [440687097] [2022-02-20 23:42:15,785 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:42:15,785 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 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 67 [2022-02-20 23:42:15,785 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:42:15,785 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:15,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:15,863 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-02-20 23:42:15,863 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:42:15,863 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-02-20 23:42:15,864 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=112, Invalid=1528, Unknown=0, NotChecked=0, Total=1640 [2022-02-20 23:42:15,864 INFO L87 Difference]: Start difference. First operand 68 states and 69 transitions. Second operand has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:18,266 INFO L93 Difference]: Finished difference Result 103 states and 104 transitions. [2022-02-20 23:42:18,266 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-02-20 23:42:18,266 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 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 67 [2022-02-20 23:42:18,266 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:18,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 80 transitions. [2022-02-20 23:42:18,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 80 transitions. [2022-02-20 23:42:18,267 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states and 80 transitions. [2022-02-20 23:42:18,332 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:42:18,333 INFO L225 Difference]: With dead ends: 103 [2022-02-20 23:42:18,333 INFO L226 Difference]: Without dead ends: 75 [2022-02-20 23:42:18,333 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 176 GetRequests, 110 SyntacticMatches, 7 SemanticMatches, 59 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 486 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=321, Invalid=3339, Unknown=0, NotChecked=0, Total=3660 [2022-02-20 23:42:18,334 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 101 mSDsluCounter, 528 mSDsCounter, 0 mSdLazyCounter, 1272 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 101 SdHoareTripleChecker+Valid, 549 SdHoareTripleChecker+Invalid, 1353 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 1272 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 39 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:18,334 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [101 Valid, 549 Invalid, 1353 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 1272 Invalid, 0 Unknown, 39 Unchecked, 0.9s Time] [2022-02-20 23:42:18,334 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-02-20 23:42:18,335 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 72. [2022-02-20 23:42:18,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:18,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,336 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,336 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:18,337 INFO L93 Difference]: Finished difference Result 75 states and 76 transitions. [2022-02-20 23:42:18,337 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 76 transitions. [2022-02-20 23:42:18,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:18,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:18,337 INFO L74 IsIncluded]: Start isIncluded. First operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 75 states. [2022-02-20 23:42:18,337 INFO L87 Difference]: Start difference. First operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 75 states. [2022-02-20 23:42:18,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:18,338 INFO L93 Difference]: Finished difference Result 75 states and 76 transitions. [2022-02-20 23:42:18,338 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 76 transitions. [2022-02-20 23:42:18,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:18,338 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:18,338 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:18,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:18,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 71 states have (on average 1.028169014084507) internal successors, (73), 71 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 73 transitions. [2022-02-20 23:42:18,347 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 73 transitions. Word has length 67 [2022-02-20 23:42:18,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:18,347 INFO L470 AbstractCegarLoop]: Abstraction has 72 states and 73 transitions. [2022-02-20 23:42:18,347 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 41 states have (on average 2.8292682926829267) internal successors, (116), 41 states have internal predecessors, (116), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:18,347 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 73 transitions. [2022-02-20 23:42:18,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-02-20 23:42:18,348 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:18,348 INFO L514 BasicCegarLoop]: trace histogram [9, 9, 9, 9, 9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:18,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-02-20 23:42:18,563 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-02-20 23:42:18,563 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:18,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:18,564 INFO L85 PathProgramCache]: Analyzing trace with hash -1022060910, now seen corresponding path program 13 times [2022-02-20 23:42:18,564 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:18,564 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1709273848] [2022-02-20 23:42:18,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:18,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:18,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:18,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {7510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7510#true} is VALID [2022-02-20 23:42:18,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {7510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {7510#true} is VALID [2022-02-20 23:42:18,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {7510#true} assume !(main_~length1~0#1 < 1); {7510#true} is VALID [2022-02-20 23:42:18,917 INFO L290 TraceCheckUtils]: 3: Hoare triple {7510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,918 INFO L290 TraceCheckUtils]: 4: Hoare triple {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {7512#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,920 INFO L290 TraceCheckUtils]: 10: Hoare triple {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {7513#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,921 INFO L290 TraceCheckUtils]: 12: Hoare triple {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,921 INFO L290 TraceCheckUtils]: 13: Hoare triple {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,922 INFO L290 TraceCheckUtils]: 14: Hoare triple {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,922 INFO L290 TraceCheckUtils]: 15: Hoare triple {7514#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,922 INFO L290 TraceCheckUtils]: 16: Hoare triple {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,923 INFO L290 TraceCheckUtils]: 17: Hoare triple {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,923 INFO L290 TraceCheckUtils]: 18: Hoare triple {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,924 INFO L290 TraceCheckUtils]: 19: Hoare triple {7515#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,924 INFO L290 TraceCheckUtils]: 20: Hoare triple {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,925 INFO L290 TraceCheckUtils]: 21: Hoare triple {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,925 INFO L290 TraceCheckUtils]: 22: Hoare triple {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,925 INFO L290 TraceCheckUtils]: 23: Hoare triple {7516#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,926 INFO L290 TraceCheckUtils]: 24: Hoare triple {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,926 INFO L290 TraceCheckUtils]: 25: Hoare triple {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,927 INFO L290 TraceCheckUtils]: 26: Hoare triple {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,927 INFO L290 TraceCheckUtils]: 27: Hoare triple {7517#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,927 INFO L290 TraceCheckUtils]: 28: Hoare triple {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,928 INFO L290 TraceCheckUtils]: 29: Hoare triple {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,928 INFO L290 TraceCheckUtils]: 30: Hoare triple {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:18,929 INFO L290 TraceCheckUtils]: 31: Hoare triple {7518#(and (<= (+ |ULTIMATE.start_main_~length1~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,930 INFO L290 TraceCheckUtils]: 32: Hoare triple {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,930 INFO L290 TraceCheckUtils]: 33: Hoare triple {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} havoc main_#t~nondet7#1; {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {7519#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 7) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7520#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 8) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} is VALID [2022-02-20 23:42:18,932 INFO L290 TraceCheckUtils]: 36: Hoare triple {7520#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 8) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,932 INFO L290 TraceCheckUtils]: 38: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} havoc main_#t~nondet7#1; {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,933 INFO L290 TraceCheckUtils]: 39: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,933 INFO L290 TraceCheckUtils]: 40: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,934 INFO L290 TraceCheckUtils]: 41: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:18,934 INFO L290 TraceCheckUtils]: 42: Hoare triple {7521#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,934 INFO L290 TraceCheckUtils]: 43: Hoare triple {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,935 INFO L290 TraceCheckUtils]: 44: Hoare triple {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,935 INFO L290 TraceCheckUtils]: 45: Hoare triple {7522#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (<= 10 (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,935 INFO L290 TraceCheckUtils]: 46: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,936 INFO L290 TraceCheckUtils]: 47: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,936 INFO L290 TraceCheckUtils]: 48: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,937 INFO L290 TraceCheckUtils]: 49: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,937 INFO L290 TraceCheckUtils]: 50: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,937 INFO L290 TraceCheckUtils]: 51: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,938 INFO L290 TraceCheckUtils]: 52: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,938 INFO L290 TraceCheckUtils]: 53: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,939 INFO L290 TraceCheckUtils]: 54: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,939 INFO L290 TraceCheckUtils]: 55: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,939 INFO L290 TraceCheckUtils]: 56: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,940 INFO L290 TraceCheckUtils]: 57: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,940 INFO L290 TraceCheckUtils]: 58: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,941 INFO L290 TraceCheckUtils]: 59: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,941 INFO L290 TraceCheckUtils]: 60: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,941 INFO L290 TraceCheckUtils]: 61: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,942 INFO L290 TraceCheckUtils]: 62: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,942 INFO L290 TraceCheckUtils]: 63: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,943 INFO L290 TraceCheckUtils]: 64: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,943 INFO L290 TraceCheckUtils]: 65: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,943 INFO L290 TraceCheckUtils]: 66: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,944 INFO L290 TraceCheckUtils]: 67: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,944 INFO L290 TraceCheckUtils]: 68: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:18,945 INFO L290 TraceCheckUtils]: 69: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7531#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 9 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:18,945 INFO L290 TraceCheckUtils]: 70: Hoare triple {7531#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 9 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {7511#false} is VALID [2022-02-20 23:42:18,945 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 91 proven. 179 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:18,945 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:18,945 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1709273848] [2022-02-20 23:42:18,946 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1709273848] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:18,946 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1508790784] [2022-02-20 23:42:18,946 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:42:18,946 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:18,946 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:18,947 INFO L229 MonitoredProcess]: Starting monitored process 15 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:42:18,947 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-02-20 23:42:19,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:19,041 INFO L263 TraceCheckSpWp]: Trace formula consists of 278 conjuncts, 60 conjunts are in the unsatisfiable core [2022-02-20 23:42:19,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:19,059 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:19,694 INFO L290 TraceCheckUtils]: 0: Hoare triple {7510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7510#true} is VALID [2022-02-20 23:42:19,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {7510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {7510#true} is VALID [2022-02-20 23:42:19,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {7510#true} assume !(main_~length1~0#1 < 1); {7510#true} is VALID [2022-02-20 23:42:19,694 INFO L290 TraceCheckUtils]: 3: Hoare triple {7510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,694 INFO L290 TraceCheckUtils]: 4: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,695 INFO L290 TraceCheckUtils]: 5: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,695 INFO L290 TraceCheckUtils]: 6: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,696 INFO L290 TraceCheckUtils]: 10: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,697 INFO L290 TraceCheckUtils]: 12: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,697 INFO L290 TraceCheckUtils]: 13: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,697 INFO L290 TraceCheckUtils]: 14: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,698 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,698 INFO L290 TraceCheckUtils]: 16: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,698 INFO L290 TraceCheckUtils]: 17: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,699 INFO L290 TraceCheckUtils]: 18: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,699 INFO L290 TraceCheckUtils]: 19: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,699 INFO L290 TraceCheckUtils]: 20: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,700 INFO L290 TraceCheckUtils]: 21: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,700 INFO L290 TraceCheckUtils]: 22: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,700 INFO L290 TraceCheckUtils]: 23: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,701 INFO L290 TraceCheckUtils]: 24: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,701 INFO L290 TraceCheckUtils]: 25: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,701 INFO L290 TraceCheckUtils]: 26: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,702 INFO L290 TraceCheckUtils]: 27: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,702 INFO L290 TraceCheckUtils]: 28: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,702 INFO L290 TraceCheckUtils]: 29: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,702 INFO L290 TraceCheckUtils]: 30: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,703 INFO L290 TraceCheckUtils]: 32: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,703 INFO L290 TraceCheckUtils]: 33: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,704 INFO L290 TraceCheckUtils]: 34: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,704 INFO L290 TraceCheckUtils]: 35: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7648#(<= 8 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:19,704 INFO L290 TraceCheckUtils]: 36: Hoare triple {7648#(<= 8 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:19,705 INFO L290 TraceCheckUtils]: 37: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:19,705 INFO L290 TraceCheckUtils]: 38: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:19,705 INFO L290 TraceCheckUtils]: 39: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:19,705 INFO L290 TraceCheckUtils]: 40: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:19,706 INFO L290 TraceCheckUtils]: 41: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {7668#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 9) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:42:19,706 INFO L290 TraceCheckUtils]: 42: Hoare triple {7668#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 9) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {7672#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} is VALID [2022-02-20 23:42:19,707 INFO L290 TraceCheckUtils]: 43: Hoare triple {7672#(< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7676#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,707 INFO L290 TraceCheckUtils]: 44: Hoare triple {7676#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7676#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,708 INFO L290 TraceCheckUtils]: 45: Hoare triple {7676#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,708 INFO L290 TraceCheckUtils]: 46: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,709 INFO L290 TraceCheckUtils]: 47: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,709 INFO L290 TraceCheckUtils]: 48: Hoare triple {7523#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,710 INFO L290 TraceCheckUtils]: 49: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,710 INFO L290 TraceCheckUtils]: 50: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,710 INFO L290 TraceCheckUtils]: 51: Hoare triple {7524#(and (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,711 INFO L290 TraceCheckUtils]: 52: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,711 INFO L290 TraceCheckUtils]: 53: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,712 INFO L290 TraceCheckUtils]: 54: Hoare triple {7525#(and (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,712 INFO L290 TraceCheckUtils]: 55: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,713 INFO L290 TraceCheckUtils]: 56: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,713 INFO L290 TraceCheckUtils]: 57: Hoare triple {7526#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,714 INFO L290 TraceCheckUtils]: 58: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,714 INFO L290 TraceCheckUtils]: 59: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,714 INFO L290 TraceCheckUtils]: 60: Hoare triple {7527#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,715 INFO L290 TraceCheckUtils]: 61: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,715 INFO L290 TraceCheckUtils]: 62: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,716 INFO L290 TraceCheckUtils]: 63: Hoare triple {7528#(and (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,716 INFO L290 TraceCheckUtils]: 64: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,716 INFO L290 TraceCheckUtils]: 65: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,717 INFO L290 TraceCheckUtils]: 66: Hoare triple {7529#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,717 INFO L290 TraceCheckUtils]: 67: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,718 INFO L290 TraceCheckUtils]: 68: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:19,718 INFO L290 TraceCheckUtils]: 69: Hoare triple {7530#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7531#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 9 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:19,719 INFO L290 TraceCheckUtils]: 70: Hoare triple {7531#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 9 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {7511#false} is VALID [2022-02-20 23:42:19,719 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 120 proven. 150 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:19,719 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:42:20,300 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 3 [2022-02-20 23:42:20,502 INFO L290 TraceCheckUtils]: 70: Hoare triple {7758#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {7511#false} is VALID [2022-02-20 23:42:20,503 INFO L290 TraceCheckUtils]: 69: Hoare triple {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7758#(and (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,503 INFO L290 TraceCheckUtils]: 68: Hoare triple {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,504 INFO L290 TraceCheckUtils]: 67: Hoare triple {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,504 INFO L290 TraceCheckUtils]: 66: Hoare triple {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7762#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,505 INFO L290 TraceCheckUtils]: 65: Hoare triple {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:42:20,505 INFO L290 TraceCheckUtils]: 64: Hoare triple {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:42:20,506 INFO L290 TraceCheckUtils]: 63: Hoare triple {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7772#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:42:20,506 INFO L290 TraceCheckUtils]: 62: Hoare triple {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,506 INFO L290 TraceCheckUtils]: 61: Hoare triple {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,507 INFO L290 TraceCheckUtils]: 60: Hoare triple {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7782#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,507 INFO L290 TraceCheckUtils]: 59: Hoare triple {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:42:20,508 INFO L290 TraceCheckUtils]: 58: Hoare triple {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:42:20,508 INFO L290 TraceCheckUtils]: 57: Hoare triple {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7792#(and (<= (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)))} is VALID [2022-02-20 23:42:20,509 INFO L290 TraceCheckUtils]: 56: Hoare triple {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:42:20,509 INFO L290 TraceCheckUtils]: 55: Hoare triple {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:42:20,509 INFO L290 TraceCheckUtils]: 54: Hoare triple {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7802#(and (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)))} is VALID [2022-02-20 23:42:20,510 INFO L290 TraceCheckUtils]: 53: Hoare triple {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} is VALID [2022-02-20 23:42:20,510 INFO L290 TraceCheckUtils]: 52: Hoare triple {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} is VALID [2022-02-20 23:42:20,511 INFO L290 TraceCheckUtils]: 51: Hoare triple {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7812#(and (<= (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)))} is VALID [2022-02-20 23:42:20,511 INFO L290 TraceCheckUtils]: 50: Hoare triple {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,511 INFO L290 TraceCheckUtils]: 49: Hoare triple {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,512 INFO L290 TraceCheckUtils]: 48: Hoare triple {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7822#(and (<= 0 (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,512 INFO L290 TraceCheckUtils]: 47: Hoare triple {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,513 INFO L290 TraceCheckUtils]: 46: Hoare triple {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,513 INFO L290 TraceCheckUtils]: 45: Hoare triple {7842#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {7832#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,514 INFO L290 TraceCheckUtils]: 44: Hoare triple {7842#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {7842#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,514 INFO L290 TraceCheckUtils]: 43: Hoare triple {7849#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {7842#(and (<= 0 (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 9)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,514 INFO L290 TraceCheckUtils]: 42: Hoare triple {7853#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 10) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {7849#(or (not (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) (<= (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 10) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)))} is VALID [2022-02-20 23:42:20,515 INFO L290 TraceCheckUtils]: 41: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {7853#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 10) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:42:20,515 INFO L290 TraceCheckUtils]: 40: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:20,515 INFO L290 TraceCheckUtils]: 39: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:20,516 INFO L290 TraceCheckUtils]: 38: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:20,516 INFO L290 TraceCheckUtils]: 37: Hoare triple {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:20,516 INFO L290 TraceCheckUtils]: 36: Hoare triple {7648#(<= 8 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7652#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:20,517 INFO L290 TraceCheckUtils]: 35: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7648#(<= 8 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,517 INFO L290 TraceCheckUtils]: 33: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,517 INFO L290 TraceCheckUtils]: 32: Hoare triple {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,518 INFO L290 TraceCheckUtils]: 31: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7635#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,518 INFO L290 TraceCheckUtils]: 30: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,518 INFO L290 TraceCheckUtils]: 29: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,519 INFO L290 TraceCheckUtils]: 27: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7622#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,519 INFO L290 TraceCheckUtils]: 26: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,520 INFO L290 TraceCheckUtils]: 24: Hoare triple {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,520 INFO L290 TraceCheckUtils]: 23: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7609#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,520 INFO L290 TraceCheckUtils]: 22: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,521 INFO L290 TraceCheckUtils]: 21: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7596#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,523 INFO L290 TraceCheckUtils]: 18: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,523 INFO L290 TraceCheckUtils]: 17: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,524 INFO L290 TraceCheckUtils]: 16: Hoare triple {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,524 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7583#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,526 INFO L290 TraceCheckUtils]: 11: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7570#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,526 INFO L290 TraceCheckUtils]: 10: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,526 INFO L290 TraceCheckUtils]: 9: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {7557#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,527 INFO L290 TraceCheckUtils]: 6: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,528 INFO L290 TraceCheckUtils]: 4: Hoare triple {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,529 INFO L290 TraceCheckUtils]: 3: Hoare triple {7510#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {7544#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:20,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {7510#true} assume !(main_~length1~0#1 < 1); {7510#true} is VALID [2022-02-20 23:42:20,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {7510#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {7510#true} is VALID [2022-02-20 23:42:20,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {7510#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7510#true} is VALID [2022-02-20 23:42:20,529 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 120 proven. 150 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:20,530 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1508790784] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:42:20,530 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:42:20,530 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 23, 23] total 46 [2022-02-20 23:42:20,530 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1626689331] [2022-02-20 23:42:20,530 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:42:20,530 INFO L78 Accepts]: Start accepts. Automaton has has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 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 71 [2022-02-20 23:42:20,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:42:20,531 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:20,625 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:42:20,626 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 47 states [2022-02-20 23:42:20,626 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:42:20,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 47 interpolants. [2022-02-20 23:42:20,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=232, Invalid=1930, Unknown=0, NotChecked=0, Total=2162 [2022-02-20 23:42:20,627 INFO L87 Difference]: Start difference. First operand 72 states and 73 transitions. Second operand has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:22,699 INFO L93 Difference]: Finished difference Result 77 states and 78 transitions. [2022-02-20 23:42:22,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-02-20 23:42:22,699 INFO L78 Accepts]: Start accepts. Automaton has has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 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 71 [2022-02-20 23:42:22,699 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:42:22,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 79 transitions. [2022-02-20 23:42:22,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 79 transitions. [2022-02-20 23:42:22,700 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 79 transitions. [2022-02-20 23:42:22,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:42:22,765 INFO L225 Difference]: With dead ends: 77 [2022-02-20 23:42:22,765 INFO L226 Difference]: Without dead ends: 77 [2022-02-20 23:42:22,766 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 181 GetRequests, 114 SyntacticMatches, 2 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 676 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=818, Invalid=3604, Unknown=0, NotChecked=0, Total=4422 [2022-02-20 23:42:22,766 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 292 mSDsluCounter, 344 mSDsCounter, 0 mSdLazyCounter, 918 mSolverCounterSat, 123 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 292 SdHoareTripleChecker+Valid, 367 SdHoareTripleChecker+Invalid, 1041 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 123 IncrementalHoareTripleChecker+Valid, 918 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 23:42:22,769 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [292 Valid, 367 Invalid, 1041 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [123 Valid, 918 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-02-20 23:42:22,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-02-20 23:42:22,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 75. [2022-02-20 23:42:22,770 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:42:22,770 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,771 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,771 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:22,771 INFO L93 Difference]: Finished difference Result 77 states and 78 transitions. [2022-02-20 23:42:22,771 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 78 transitions. [2022-02-20 23:42:22,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:22,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:22,772 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 77 states. [2022-02-20 23:42:22,772 INFO L87 Difference]: Start difference. First operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 77 states. [2022-02-20 23:42:22,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:42:22,772 INFO L93 Difference]: Finished difference Result 77 states and 78 transitions. [2022-02-20 23:42:22,772 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 78 transitions. [2022-02-20 23:42:22,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:42:22,773 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:42:22,773 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:42:22,773 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:42:22,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 74 states have (on average 1.027027027027027) internal successors, (76), 74 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 76 transitions. [2022-02-20 23:42:22,773 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 76 transitions. Word has length 71 [2022-02-20 23:42:22,773 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:42:22,773 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 76 transitions. [2022-02-20 23:42:22,774 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 47 states, 46 states have (on average 3.130434782608696) internal successors, (144), 47 states have internal predecessors, (144), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:42:22,774 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 76 transitions. [2022-02-20 23:42:22,774 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-02-20 23:42:22,783 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:42:22,783 INFO L514 BasicCegarLoop]: trace histogram [10, 10, 10, 9, 9, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:42:22,801 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-02-20 23:42:22,999 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:22,999 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 3 more)] === [2022-02-20 23:42:22,999 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:42:23,000 INFO L85 PathProgramCache]: Analyzing trace with hash -1193427278, now seen corresponding path program 14 times [2022-02-20 23:42:23,000 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:42:23,000 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1671236562] [2022-02-20 23:42:23,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:42:23,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:42:23,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:23,403 INFO L290 TraceCheckUtils]: 0: Hoare triple {8325#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8325#true} is VALID [2022-02-20 23:42:23,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {8325#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {8325#true} is VALID [2022-02-20 23:42:23,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {8325#true} assume !(main_~length1~0#1 < 1); {8325#true} is VALID [2022-02-20 23:42:23,419 INFO L290 TraceCheckUtils]: 3: Hoare triple {8325#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,420 INFO L290 TraceCheckUtils]: 4: Hoare triple {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,420 INFO L290 TraceCheckUtils]: 5: Hoare triple {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,420 INFO L290 TraceCheckUtils]: 6: Hoare triple {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,421 INFO L290 TraceCheckUtils]: 7: Hoare triple {8327#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:23,421 INFO L290 TraceCheckUtils]: 8: Hoare triple {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:23,422 INFO L290 TraceCheckUtils]: 9: Hoare triple {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:23,422 INFO L290 TraceCheckUtils]: 10: Hoare triple {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet7#1; {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:42:23,422 INFO L290 TraceCheckUtils]: 11: Hoare triple {8328#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,423 INFO L290 TraceCheckUtils]: 12: Hoare triple {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,423 INFO L290 TraceCheckUtils]: 13: Hoare triple {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,423 INFO L290 TraceCheckUtils]: 14: Hoare triple {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,424 INFO L290 TraceCheckUtils]: 15: Hoare triple {8329#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,424 INFO L290 TraceCheckUtils]: 16: Hoare triple {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,425 INFO L290 TraceCheckUtils]: 17: Hoare triple {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,425 INFO L290 TraceCheckUtils]: 18: Hoare triple {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet7#1; {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:42:23,425 INFO L290 TraceCheckUtils]: 19: Hoare triple {8330#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,426 INFO L290 TraceCheckUtils]: 20: Hoare triple {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,426 INFO L290 TraceCheckUtils]: 21: Hoare triple {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,426 INFO L290 TraceCheckUtils]: 22: Hoare triple {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,427 INFO L290 TraceCheckUtils]: 23: Hoare triple {8331#(and (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:23,427 INFO L290 TraceCheckUtils]: 24: Hoare triple {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:23,428 INFO L290 TraceCheckUtils]: 25: Hoare triple {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:23,428 INFO L290 TraceCheckUtils]: 26: Hoare triple {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} havoc main_#t~nondet7#1; {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:42:23,428 INFO L290 TraceCheckUtils]: 27: Hoare triple {8332#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,429 INFO L290 TraceCheckUtils]: 28: Hoare triple {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,429 INFO L290 TraceCheckUtils]: 29: Hoare triple {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,429 INFO L290 TraceCheckUtils]: 30: Hoare triple {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet7#1; {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,430 INFO L290 TraceCheckUtils]: 31: Hoare triple {8333#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 6 |ULTIMATE.start_main_~i~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:23,430 INFO L290 TraceCheckUtils]: 32: Hoare triple {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:23,430 INFO L290 TraceCheckUtils]: 33: Hoare triple {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:23,431 INFO L290 TraceCheckUtils]: 34: Hoare triple {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} havoc main_#t~nondet7#1; {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} is VALID [2022-02-20 23:42:23,431 INFO L290 TraceCheckUtils]: 35: Hoare triple {8334#(and (<= 7 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 7))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8335#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 8 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:42:23,432 INFO L290 TraceCheckUtils]: 36: Hoare triple {8335#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 8 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:23,432 INFO L290 TraceCheckUtils]: 37: Hoare triple {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:23,432 INFO L290 TraceCheckUtils]: 38: Hoare triple {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet7#1; {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:23,433 INFO L290 TraceCheckUtils]: 39: Hoare triple {8336#(and (<= |ULTIMATE.start_main_~i~0#1| 8) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8337#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 9) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:23,433 INFO L290 TraceCheckUtils]: 40: Hoare triple {8337#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 9) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8338#(and (<= |ULTIMATE.start_main_~length1~0#1| 10) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:42:23,434 INFO L290 TraceCheckUtils]: 41: Hoare triple {8338#(and (<= |ULTIMATE.start_main_~length1~0#1| 10) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 10 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {8339#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 9)) 0))} is VALID [2022-02-20 23:42:23,434 INFO L290 TraceCheckUtils]: 42: Hoare triple {8339#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 9)) 0))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} is VALID [2022-02-20 23:42:23,435 INFO L290 TraceCheckUtils]: 43: Hoare triple {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} is VALID [2022-02-20 23:42:23,435 INFO L290 TraceCheckUtils]: 44: Hoare triple {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} is VALID [2022-02-20 23:42:23,435 INFO L290 TraceCheckUtils]: 45: Hoare triple {8340#(and (= |ULTIMATE.start_cstrlen_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) 9) 0))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:23,436 INFO L290 TraceCheckUtils]: 46: Hoare triple {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:23,436 INFO L290 TraceCheckUtils]: 47: Hoare triple {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} is VALID [2022-02-20 23:42:23,436 INFO L290 TraceCheckUtils]: 48: Hoare triple {8341#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 8)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,436 INFO L290 TraceCheckUtils]: 49: Hoare triple {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,437 INFO L290 TraceCheckUtils]: 50: Hoare triple {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,437 INFO L290 TraceCheckUtils]: 51: Hoare triple {8342#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:23,437 INFO L290 TraceCheckUtils]: 52: Hoare triple {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:23,438 INFO L290 TraceCheckUtils]: 53: Hoare triple {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} is VALID [2022-02-20 23:42:23,438 INFO L290 TraceCheckUtils]: 54: Hoare triple {8343#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 6)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,438 INFO L290 TraceCheckUtils]: 55: Hoare triple {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,439 INFO L290 TraceCheckUtils]: 56: Hoare triple {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} is VALID [2022-02-20 23:42:23,439 INFO L290 TraceCheckUtils]: 57: Hoare triple {8344#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:23,439 INFO L290 TraceCheckUtils]: 58: Hoare triple {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:23,440 INFO L290 TraceCheckUtils]: 59: Hoare triple {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} is VALID [2022-02-20 23:42:23,440 INFO L290 TraceCheckUtils]: 60: Hoare triple {8345#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 4)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:23,440 INFO L290 TraceCheckUtils]: 61: Hoare triple {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:23,441 INFO L290 TraceCheckUtils]: 62: Hoare triple {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} is VALID [2022-02-20 23:42:23,441 INFO L290 TraceCheckUtils]: 63: Hoare triple {8346#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 3)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:23,442 INFO L290 TraceCheckUtils]: 64: Hoare triple {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:23,442 INFO L290 TraceCheckUtils]: 65: Hoare triple {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:42:23,442 INFO L290 TraceCheckUtils]: 66: Hoare triple {8347#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 2)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:23,443 INFO L290 TraceCheckUtils]: 67: Hoare triple {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:23,443 INFO L290 TraceCheckUtils]: 68: Hoare triple {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:42:23,443 INFO L290 TraceCheckUtils]: 69: Hoare triple {8348#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ |ULTIMATE.start_cstrlen_~s~0#1.offset| 1)) 0)} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8349#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:42:23,444 INFO L290 TraceCheckUtils]: 70: Hoare triple {8349#(= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) |ULTIMATE.start_cstrlen_~s~0#1.offset|) 0)} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8350#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} is VALID [2022-02-20 23:42:23,444 INFO L290 TraceCheckUtils]: 71: Hoare triple {8350#(= |ULTIMATE.start_cstrlen_#t~mem3#1| 0)} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8326#false} is VALID [2022-02-20 23:42:23,444 INFO L290 TraceCheckUtils]: 72: Hoare triple {8326#false} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8326#false} is VALID [2022-02-20 23:42:23,444 INFO L290 TraceCheckUtils]: 73: Hoare triple {8326#false} assume !(1 + cstrlen_~s~0#1.offset <= #length[cstrlen_~s~0#1.base] && 0 <= cstrlen_~s~0#1.offset); {8326#false} is VALID [2022-02-20 23:42:23,444 INFO L134 CoverageAnalysis]: Checked inductivity of 298 backedges. 19 proven. 279 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:42:23,444 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:42:23,444 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1671236562] [2022-02-20 23:42:23,444 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1671236562] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:42:23,445 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1570466743] [2022-02-20 23:42:23,445 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:42:23,445 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:42:23,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:42:23,446 INFO L229 MonitoredProcess]: Starting monitored process 16 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:42:23,446 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-02-20 23:42:23,528 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:42:23,528 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:42:23,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 71 conjunts are in the unsatisfiable core [2022-02-20 23:42:23,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:42:23,546 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:42:23,939 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:42:28,982 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:42:28,982 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 18 [2022-02-20 23:42:29,256 INFO L290 TraceCheckUtils]: 0: Hoare triple {8325#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8325#true} is VALID [2022-02-20 23:42:29,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {8325#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~malloc5#1.base, main_#t~malloc5#1.offset, main_#t~nondet7#1, main_#t~post6#1, main_~i~0#1, main_#t~ret8#1, main_~length1~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {8325#true} is VALID [2022-02-20 23:42:29,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {8325#true} assume !(main_~length1~0#1 < 1); {8325#true} is VALID [2022-02-20 23:42:29,256 INFO L290 TraceCheckUtils]: 3: Hoare triple {8325#true} call main_#t~malloc5#1.base, main_#t~malloc5#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc5#1.base, main_#t~malloc5#1.offset;main_~i~0#1 := 0; {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,257 INFO L290 TraceCheckUtils]: 4: Hoare triple {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,257 INFO L290 TraceCheckUtils]: 5: Hoare triple {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,257 INFO L290 TraceCheckUtils]: 6: Hoare triple {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {8363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,258 INFO L290 TraceCheckUtils]: 8: Hoare triple {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,258 INFO L290 TraceCheckUtils]: 9: Hoare triple {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,258 INFO L290 TraceCheckUtils]: 10: Hoare triple {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,259 INFO L290 TraceCheckUtils]: 11: Hoare triple {8376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,260 INFO L290 TraceCheckUtils]: 15: Hoare triple {8389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,260 INFO L290 TraceCheckUtils]: 16: Hoare triple {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,260 INFO L290 TraceCheckUtils]: 17: Hoare triple {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,260 INFO L290 TraceCheckUtils]: 18: Hoare triple {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,261 INFO L290 TraceCheckUtils]: 19: Hoare triple {8402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,261 INFO L290 TraceCheckUtils]: 20: Hoare triple {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,261 INFO L290 TraceCheckUtils]: 21: Hoare triple {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,262 INFO L290 TraceCheckUtils]: 22: Hoare triple {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,262 INFO L290 TraceCheckUtils]: 23: Hoare triple {8415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,262 INFO L290 TraceCheckUtils]: 24: Hoare triple {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,262 INFO L290 TraceCheckUtils]: 25: Hoare triple {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,263 INFO L290 TraceCheckUtils]: 26: Hoare triple {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,263 INFO L290 TraceCheckUtils]: 27: Hoare triple {8428#(<= 5 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,263 INFO L290 TraceCheckUtils]: 28: Hoare triple {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,263 INFO L290 TraceCheckUtils]: 29: Hoare triple {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,264 INFO L290 TraceCheckUtils]: 30: Hoare triple {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,264 INFO L290 TraceCheckUtils]: 31: Hoare triple {8441#(<= 6 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,264 INFO L290 TraceCheckUtils]: 32: Hoare triple {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,265 INFO L290 TraceCheckUtils]: 33: Hoare triple {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,265 INFO L290 TraceCheckUtils]: 34: Hoare triple {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet7#1; {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,265 INFO L290 TraceCheckUtils]: 35: Hoare triple {8454#(<= 7 |ULTIMATE.start_main_~i~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8467#(<= 8 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:42:29,266 INFO L290 TraceCheckUtils]: 36: Hoare triple {8467#(<= 8 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet7#1 && main_#t~nondet7#1 <= 127; {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:29,266 INFO L290 TraceCheckUtils]: 37: Hoare triple {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet7#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L530 {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:29,266 INFO L290 TraceCheckUtils]: 38: Hoare triple {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet7#1; {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:29,266 INFO L290 TraceCheckUtils]: 39: Hoare triple {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post6#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:29,267 INFO L290 TraceCheckUtils]: 40: Hoare triple {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:42:29,268 INFO L290 TraceCheckUtils]: 41: Hoare triple {8471#(< 9 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L528-4 {8487#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:42:29,270 INFO L290 TraceCheckUtils]: 42: Hoare triple {8487#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|)))} assume { :begin_inline_cstrlen } true;cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset;havoc cstrlen_#res#1;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset, cstrlen_#t~mem3#1, cstrlen_~str#1.base, cstrlen_~str#1.offset, cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~str#1.base, cstrlen_~str#1.offset := cstrlen_#in~str#1.base, cstrlen_#in~str#1.offset;havoc cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~str#1.base, cstrlen_~str#1.offset; {8491#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} is VALID [2022-02-20 23:42:29,271 INFO L290 TraceCheckUtils]: 43: Hoare triple {8491#(exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|)))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8495#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,271 INFO L290 TraceCheckUtils]: 44: Hoare triple {8495#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8495#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,272 INFO L290 TraceCheckUtils]: 45: Hoare triple {8495#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| |ULTIMATE.start_main_~nondetString1~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} is VALID [2022-02-20 23:42:29,274 INFO L290 TraceCheckUtils]: 46: Hoare triple {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} is VALID [2022-02-20 23:42:29,275 INFO L290 TraceCheckUtils]: 47: Hoare triple {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} is VALID [2022-02-20 23:42:29,276 INFO L290 TraceCheckUtils]: 48: Hoare triple {8502#(and (<= 1 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,279 INFO L290 TraceCheckUtils]: 49: Hoare triple {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,280 INFO L290 TraceCheckUtils]: 50: Hoare triple {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,281 INFO L290 TraceCheckUtils]: 51: Hoare triple {8512#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)))) (<= 2 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,283 INFO L290 TraceCheckUtils]: 52: Hoare triple {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:29,284 INFO L290 TraceCheckUtils]: 53: Hoare triple {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:31,291 WARN L290 TraceCheckUtils]: 54: Hoare triple {8522#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 3 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is UNKNOWN [2022-02-20 23:42:31,295 INFO L290 TraceCheckUtils]: 55: Hoare triple {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:31,301 INFO L290 TraceCheckUtils]: 56: Hoare triple {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:31,320 INFO L290 TraceCheckUtils]: 57: Hoare triple {8532#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)))) (<= 4 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:42:33,328 WARN L290 TraceCheckUtils]: 58: Hoare triple {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} is UNKNOWN [2022-02-20 23:42:33,331 INFO L290 TraceCheckUtils]: 59: Hoare triple {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:42:33,332 INFO L290 TraceCheckUtils]: 60: Hoare triple {8542#(and (<= 5 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,333 INFO L290 TraceCheckUtils]: 61: Hoare triple {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,335 INFO L290 TraceCheckUtils]: 62: Hoare triple {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,336 INFO L290 TraceCheckUtils]: 63: Hoare triple {8552#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 6)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|))) (<= 6 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,336 INFO L290 TraceCheckUtils]: 64: Hoare triple {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,338 INFO L290 TraceCheckUtils]: 65: Hoare triple {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} is VALID [2022-02-20 23:42:33,341 INFO L290 TraceCheckUtils]: 66: Hoare triple {8562#(and (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 7)))) (<= 7 |ULTIMATE.start_cstrlen_~s~0#1.offset|))} cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset := cstrlen_~s~0#1.base, 1 + cstrlen_~s~0#1.offset;havoc cstrlen_#t~pre2#1.base, cstrlen_#t~pre2#1.offset; {8572#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))))} is VALID [2022-02-20 23:42:33,342 INFO L290 TraceCheckUtils]: 67: Hoare triple {8572#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))))} SUMMARY for call cstrlen_#t~mem3#1 := read~int(cstrlen_~s~0#1.base, cstrlen_~s~0#1.offset, 1); srcloc: L518-4 {8572#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))))} is VALID [2022-02-20 23:42:33,345 INFO L290 TraceCheckUtils]: 68: Hoare triple {8572#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))))} assume !!(0 != cstrlen_#t~mem3#1);havoc cstrlen_#t~mem3#1; {8572#(and (<= 8 |ULTIMATE.start_cstrlen_~s~0#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString1~0#1.offset| Int) (|ULTIMATE.start_main_~length1~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrlen_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (select |#length| |ULTIMATE.start_cstrlen_~s~0#1.base|)) (< 9 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_cstrlen_~s~0#1.offset| (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 8)))))} is VALID